Un archivo .dll (Dynamic Link Library o Biblioteca de Vínculos Dinámicos) es una biblioteca que contiene código y datos que pueden ser utilizados por más de un programa simultáneamente. En el contexto de .NET, un archivo .dll representa un ensamblado .NET. Estos ensamblados contienen código compilado escrito en lenguajes como C#, VB.NET o F#, junto con metadatos que describen los tipos, métodos y recursos dentro del ensamblado. Estos metadatos, conocidos como el manifiesto del ensamblado (assembly manifest), permiten al Common Language Runtime (CLR) de .NET gestionar y ejecutar el código. Los ensamblados .NET son un bloque de construcción fundamental de las aplicaciones .NET, promoviendo la reutilización de código, la modularidad y el control de versiones. Pueden contener clases, interfaces, estructuras, enumeraciones y otros tipos. Cuando una aplicación necesita utilizar la funcionalidad proporcionada por un ensamblado .NET, carga el ensamblado en memoria y accede a sus miembros. Los ensamblados .NET pueden ser privados (específicos de una aplicación) o compartidos (instalados en el Global Assembly Cache (GAC) y accesibles por múltiples aplicaciones. Su naturaleza como DLL facilita la implementación de bibliotecas compartidas y la arquitectura de componentes.