Summary

An assembly is the basic unit of versioning, culture, and deployment. Your source code is ultimately assimilated into an assembly that becomes available for distribution.

From the assembly consumer's perspective (the external view), an assembly contains the following:

  • Type metadata (describing the properties, methods, and fields of each type defined in the assembly).

  • MSIL code (the implementation of each type defined in the assembly).

  • Assembly manifest (describing overall information about the assembly).

  • Resources (e.g., strings and bitmaps).

From the assembly developer's perspective (the internal view), an assembly consists of one or more executables (PE files) called modules, each of which contains type metadata (optional), manifest, resources ...

Get .NET Programming: A Practical Guide Using C# now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.