C#: Difference between List and Collection (CA1002, Do not expose generic lists) [duplicate]
In short, the generic list does not have virtual methods for Add, Remove etc, as it was designed to be fast, not extensible. This means that you cannot swap this concrete implementation out for a useful subclass (even though you can subclass it as it is not sealed). Therefore, by exposing the List itself, you … Read more