Un file .dll (Dynamic Link Library) è una libreria che contiene codice e dati che possono essere utilizzati da più programmi contemporaneamente. Nel contesto di .NET, un file .dll rappresenta un assembly .NET. Questi assembly contengono codice compilato scritto in linguaggi come C#, VB.NET o F#, insieme a metadati che descrivono i tipi, i metodi e le risorse all'interno dell'assembly stesso. Questi metadati, noti come manifest dell'assembly, consentono al .NET Common Language Runtime (CLR) di gestire ed eseguire il codice. Gli assembly .NET costituiscono un elemento costruttivo fondamentale delle applicazioni .NET, poiché promuovono il riutilizzo del codice, la modularità e il versionamento. Possono contenere classi, interfacce, strutture, enumerazioni e altri tipi di dati. Quando un'applicazione deve utilizzare le funzionalità fornite da un assembly .NET, carica l'assembly in memoria e accede ai suoi membri. Gli assembly .NET possono essere privati (specifici per una singola applicazione) o condivisi (ovvero installati nella Global Assembly Cache (GAC) e accessibili da più applicazioni contemporaneamente).