C# | Assembly, EXE and DLL

Clarify the differences of these confusing tech terms

Colton
The Crazy Coder

--

Photo by Peter Balizs on Unsplash

In this article, we will try to understand what exactly is termed as an Assembly, a EXE or a DLL. If you go to the microsoft.com, and try to read the definition of an assembly it says:

Assemblies form the fundamental units of deployment, version control, reuse, activation scoping, and security permissions for .NET-based applications.

An assembly is a collection of types and resources that are built to work together and form a logical unit of functionality.

Assemblies take the form of executable (.exe) or dynamic link library (.dll) files, and are the building blocks of .NET applications.

For a beginner in the C# world, it will be very difficult to understand what it means. Let me put it in simple word, the assembly is nothing but it is precompiled chunk of .NET code which can be run by the CLR.

For a better understanding please have a look at the following diagram.

For example, here we have a very simple console app.

--

--

Colton
The Crazy Coder

A software engineer who is always at a high level of passion with new techs and a strong willing to share with what I have learned.