An assembly is made up of:
Assemblies are the building block of a .Net application.
There are two types of assembly: Process assemblies (EXE) and Library assemblies (DLL).
Using dynamic linking instead of static linking offers several advantages. DLLs save memory, reduce swapping, save disk space, upgrade easier