I am currently trying to learn how to use unit testing, and I have created the actual list of 3 animal objects and the expected list of 3 animal objects. The question is how
That is correct, as the lists are 2 different objects containing the similar data.
In order to get compare lists you should use the CollectionAssert
CollectionAssert.AreEqual(expected ,actual);
That should do the trick.