Generics ถูกเพิ่มในเวอร์ชัน 2.0 ของ C# และเป็นหนึ่งในแนวคิดที่สำคัญที่สุดในภาษา สิ่งเหล่านี้ทำให้คุณสามารถเขียนโค้ดที่นำกลับมาใช้ใหม่ได้ ประสิทธิภาพสูง ซึ่งปลอดภัยต่อการพิมพ์ในขณะที่คอมไพล์ เมื่อใช้ชื่อสามัญ คุณจะใช้ประเภทในโค้ดได้โดยไม่ต้องทราบล่วงหน้า Generics ถูกใช้ในหลายที่ใน .NET รวมถึงคอลเล็ก