Question: what is the difference between list and ilist?
Answer: The difference is that IList is an Interface and cannot be instantiated. List is a class and can be instantiated. Because that would require C# deriving from multiple classes, which it can't.