I've read an article:
https://msdn.microsoft.com/en-us/library/92t2ye13(v=vs.110).aspx
They specify here that ICollection<T> derives from the two aforementioned interfaces. But why not simply inherit IEnumerable<T>? It already derives from the other (the IEnumerable one). So why do we inherit it once more? I don't understand...