Systems.Collections.IEnumerable is the interface for all non-generic enumerable collections. Systems.Collections.IEnumerable is also the basis for LINQ. System.Collections.IEnumerable has one method only, GetEnumerator(), which returns a System.Collections.IEnumerator. Systems.Collections.Generic.IEnumerable<T> (which implements Systems.Collections.IEnumerable) is the interface for all generic enumerable collections. yield keyword in C#. IEnumerable and provides an Add(xy elem) method can be constructed with a collection initializer. HKEY_CLASSES_ROOT\Interface\{496B0ABE-CDEE-11D3-88E8-00902754C43A} is IEnumerable.