Файл .dll (Dynamic Link Library — Динамически подключаемая библиотека) — это библиотека, содержащая код и данные, которые могут использоваться одновременно несколькими программами. В контексте .NET файл .dll представляет собой сборку .NET (assembly). Эти сборки являются фундаментальным строительным блоком приложений .NET. Они содержат скомпилированный код, написанный на таких языках, как C#, VB.NET или F#, а также метаданные, описывающие типы (types), методы (methods) и ресурсы (resources) внутри сборки. Эти метаданные, известные как манифест сборки (assembly manifest), позволяют среде выполнения .NET Common Language Runtime (CLR) управлять кодом и выполнять его. Сборки .NET способствуют повторному использованию кода (code reusability), модульности (modularity) и управлению версиями (versioning). Они могут содержать классы, интерфейсы, структуры, перечисления и другие типы. Когда приложению требуется использовать функциональность, предоставляемую сборкой .NET, оно загружает сборку в память и получает доступ к ее членам. Сборки .NET могут быть либо частными (private, специфичными для одного приложения), либо общими (shared, установленными в Глобальном кэше сборок — Global Assembly Cache, GAC — и доступными для нескольких приложений).