Generics were introduced to the .NET Framework and C# language in version 2.0. Consequently, all subsequent versions (3.0, 3.5, 4.0, and newer) support generics as they build upon the CLR version 2.0 base. Therefore, ".NET 2.0 and above" is the correct starting point.