/слон/i? Это ж не JS, тут нет /, и i задается по другому.
animals.IndexOf(elephant)
>= 0 потому что
Return Value: The zero-based index position of value if that string is found, or -1 if it is not.
Или если надо только узнать есть он там или нет, то лучше
.Contains
использовать.
if (animals.Contains(elephant))
Или в зависимости от задания может и правда лучше использовать RegExp или разделить слова (по пробелу и т.д.), чтобы не считать слонопотама слоном.
А еще лучше не задавать вопросы, ответ на которые можно получить в любом учебнике/документации/статье в разделе описания работы со строками.