Et program kompileres til et felles mellomformat som kalles Microsoft Intermediate Language (MSIL, eller bare IL). I dette formatet er klasser og typer i henhold til Common Type System (CTS), som er en del av Common Language Specification (CLS). Ved kjøring blir dette mellomformatet kompilert just-in-time, til det formatet prosessoren kan håndtere.