In general, a static assembly can consist of four elements:
 
The assembly manifest, which contains assembly metadata.
 Type metadata.
 Microsoft intermediate language (MSIL) code that implements the types.
 A set of resources.