C# 2.0 以降の新機能を一つづつ確認していきます。
以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きます。
ジェネリック
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/generics/
List<T> クラスなどの T の機能。List<int> とすると int 型しか格納できない型安全な List を使用できる。
List<int> ints = new List<int>(); // ints.Add("text"); <- これはできない ints.Add(1);
List<string> strings = new List<string>(); // strings.Add(1); <- これはできない strings.Add("text");