Actualización: noviembre 2007
Los genéricos le permiten personalizar un método, clase, estructura o interfaz para el tipo de datos preciso sobre el que actúa. Por ejemplo, en lugar de utilizar la clase Hashtable, que permite que las claves y valores sean de cualquier tipo, puede usar la clase genérica Dictionary<(Of <(TKey, TValue>)>) y especificar el tipo permitido para la clave y el tipo permitido para el valor. Entre los beneficios de los genéricos se encuentran una mayor posibilidad de reutilización del código y la seguridad de tipos.
En .NET Framework se proporcionan varias clases de colección genéricas en los espacios de nombres System.Collections.Generic y System.Collections.ObjectModel. Las interfaces genéricas para implementar comparaciones de orden e igualdad se proporcionan en el espacio de nombres System, junto con los tipos de delegado genéricos para los controladores de eventos, conversiones y predicados de búsqueda.
Se ha agregado compatibilidad con genéricos a System.Reflection para examinar tipos y métodos genéricos, a System.Reflection.Emit para emitir ensamblados dinámicos que contienen tipos y métodos genéricos, y a System.CodeDom para generar gráficos de origen que incluyen genéricos.
Visual Basic, C# y Visual C++ proporcionan compatibilidad completa para definir y utilizar tipos genéricos. Common Language Runtime proporciona nuevos códigos de operación y prefijos para admitir tipos genéricos en el lenguaje intermedio de Microsoft (MSIL).

En esta sección
- Información general sobre los genéricos de .NET Framework
Describe la característica de genéricos, las funciones que aporta a .NET Framework y la manera que en que se expone en Common Language Runtime.
- Colecciones genéricas en .NET Framework
Describe las clases de colección genéricas y otros tipos genéricos de .NET Framework.
- Delegados genéricos para manipular matrices y listas
Describe los delegados genéricos para las conversiones, predicados de búsqueda y acciones realizadas en los elementos de una matriz o colección.
- Interfaces genéricas
Describe las interfaces genéricas que proporcionan funciones comunes entre las familias de tipos genéricos.
- Ventajas y limitaciones de genéricos
Resume las ventajas y restricciones en el uso de genéricos.

Referencia
- System.Collections.Generic
Cataloga la mayoría de los tipos de colección genérica proporcionados por .NET Framework, como las clases genéricas List<(Of <(T>)>) y Dictionary<(Of <(TKey, TValue>)>).
- System.Collections.ObjectModel
Cataloga tipos de colección genéricos adicionales, como la clase genérica ReadOnlyCollection<(Of <(T>)>), que son útiles para exponer modelos de objetos a los usuarios de sus clases.
- OpCodes
Se han agregado nuevos códigos de operación y prefijos para admitir los genéricos, entre los que se incluyen Stelem, Ldelem, Unbox_Any, Constrained y Readonly.

Secciones relacionadas
- Tipos de colección utilizados normalmente
Proporciona información resumida sobre las características y escenarios de uso de los tipos de colección de .NET Framework, incluidos los tipos genéricos.
- Cuándo utilizar colecciones genéricas
Describe las reglas generales para determinar cuándo utilizar los tipos de colección genéricos.
- Reflexión y tipos genéricos
Explica cómo utilizar la reflexión para examinar tipos y métodos genéricos.
- Cómo: Definir un tipo genérico con Reflection Emit
Explica cómo generar ensamblados dinámicos que incluyen tipos y métodos genéricos.
- Tipos genéricos en Visual Basic
Describe la característica de genéricos para los usuarios de Visual Basic, e incluye temas del tipo Cómo... para utilizar y definir tipos genéricos.
- Introducción a los genéricos (Guía de programación de C#)
Proporciona información general sobre la definición y el uso de tipos genéricos para los usuarios de C#.
- Overview of Generics in Visual C++
Describe la característica de genéricos para los usuarios de C++, incluidas las diferencias entre genéricos y plantillas.