This documentation is archived and is not being maintained.

Assemblies in the Common Language Runtime

Assemblies are the building blocks of .NET Framework applications; they form the fundamental unit of deployment, version control, reuse, activation scoping, and security permissions. An assembly is a collection of types and resources that are built to work together and form a logical unit of functionality. An assembly provides the common language runtime with the information it needs to be aware of type implementations. To the runtime, a type does not exist outside the context of an assembly.

Assemblies Overview

Provides an overview of the functions performed by assemblies.

Assembly Benefits

Describes how assemblies help solve versioning problems and DLL conflicts.

Assembly Contents

Describes the elements that make up an assembly.

Assembly Manifest

Describes the data in the assembly manifest, and how it is stored in assemblies.

Global Assembly Cache

Describes the global assembly cache and how it is used with assemblies.

Strong-Named Assemblies

Describes the characteristics of strong-named assemblies.

Assembly Security Considerations

Discusses how security works with assemblies.

Assembly Versioning

Provides an overview of the .NET Framework versioning policy.

Assembly Placement

Discusses where to locate assemblies.

Assemblies and Side-by-Side Execution

Provides an overview of using multiple versions of the runtime or of an assembly simultaneously.


The .NET Framework class that represents assemblies in the type system.

Programming with Assemblies

Describes how to create, sign, and set attributes on assemblies.

Emitting Dynamic Methods and Assemblies

Describes how to create dynamic assemblies.