Since .NET Core is a modular platform thus, its components could be stacked into these three layers:
- A .Net runtime: It consists of different runtime libraries that allow you to perform functions such as type safety, load assemblies, garbage collections etc.
- A collection of Framework libraries: It also consists of libraries that offer utilities, primitive data types, etc.
- A collection of SDK tools and compilers: It permits you to work with .NET Core SDK quickly.
This stack could be divided into these four components:
![critical components in .NET Core](https://www.hackertrail.com/wp-content/uploads/2022/09/critical-components-in-.NET-Core.webp)