Common Language Runtime

Para pemrogram yang hendak menggunakan CLR harus menulis kode sumber programnya dalam sebuah bahasa pemrograman tingkat tinggi, seperti halnya C#, J#, atau Visual Basic .NET dan beberapa bahasa pemrograman lainnya yang sesuai dengan .NET Framework. Pada saat kompilasi, kompilator bahasa .NET (seperti codice_1, codice_2, atau codice_3) akan mengubah kode-kode tersebut menjadi kode MSIL. Pada saat dijalankan ("runtime"), "Just-in-time compiler" (JIT compiler) yang dimiliki oleh CLR akan mengubah kembali kode MSIL menjadi kode "native" yang digunakan oleh sistem operasi. Atau, kode MSIL juga dapat dikompilasi menjadi kode "native" dalam sebuah langkah terpisah sebelum terjadi proses "runtime". Hal ini dapat mempercepat penjalankan perangkat lunak hasil kompilasi, mengingat tidak ada lagi konversi dari kode MSIL menjadi kode "native" yang sebelumnya telah dilakukan.