As a developer, we play more with IList<T>. With the help of Generics and using Enumerable.OfType<TResul... we can retrieve objects of type<T> from List<T> in more elegant way. Example: Lets assume we have a List<T> where T is of type Person. Student and Employee are two classes derived from Person. List<Person> personlist ......