جنریک درسی شارپ نوعی هست که برای تعریف یک کلاس، ساختار، رابط یا روش با متغیرها(پارامترهای نوع)و یا برای نشان دادن اینکه آنها می توانند یک یا چند نوع را ذخیره یا استفاده کنند، استفاده می شود. در #C، کامپایلر یک متغیرهایی را با نوع مشخص شده در زمان کامپایل جایگزین می کند.


اغلب ما از generics با مجموعه ها و روش هایی که بر روی آنها عمل می کنند را برای مشخص کردن نوع اشیائی که در یک مجموعه ذخیره می شود استفاده می کنیم. Generics در دات نت فریم ورک 2.0 با یک فضای نام جدید به نام System.Collections.Generic معرفی شده است.


در c #، generics برای بهبود قابلیت استفاده مجدد کد مفید است، نوع  عملکرد را در مقایسه با انواع غیر عمومی مانند arraylist.