El .NET Framework se compone principalmente de la Base Class Library (BCL), que proporciona funcionalidades básicas para el desarrollo de aplicaciones, y el Common Language Runtime (CLR), que es el entorno de ejecución donde se cargan las aplicaciones desarrolladas en los diferentes lenguajes soportados. El CLR compila el código a un lenguaje intermedio y luego a código de máquina nativo para cada plataforma a través de un compilador JIT. Los assemblies son archivos que contienen el código compilado de las aplicaciones y bibli