Common_Language_Runtime

Common Language Runtime (CLR) คือเวอร์ชวลแมชีน ซึ่งเป็นส่วนประกอบของดอตเน็ตเฟรมเวิร์ก และพัฒนาตามมาตรฐานเปิด Common Language Infrastructure ที่ไมโครซอฟท์ได้พัฒนาขึ้นมา ซึ่งอธิบายถึงสภาพแวดล้อมสำหรับโค้ดที่ทำงานบน CLR โดย CLR จะรันจากไบต์โค้ดที่เรียกว่า Microsoft Intermediate Language (MSIL) ซึ่งพัฒนาตามมาตรฐาน Common Intermediate Language (CIL)ผู้พัฒนาใช้ CLR ด้วยการเขียนโค้ดด้วยภาษาระดับสูงอย่าง C# หรือ VB.NET โดยช่วงเวลาคอมไพล์ ดอตเน็ตคอมไพเลอร์จะทำการแปลงโค้ดดังกล่าวไปเป็นโค้ด MSIL (Microsoft Intermediate Language) และเวลาที่รันโค้ด CLR's just-in-time compiler จะทำการแปลงโค้ด MSIL ไปเป็นภาษาเครื่องสำหรับระบบปฏิบัติการเพื่อให้ทำงานได้ หรือหากต้องการโค้ด MSIL สามารถคอมไพล์ไปยังเป็นภาษาเครื่องก่อนที่จะรัน ก็ทำได้เช่นกัน ซึ่งในกรณีนี้จะทำให้การรันโค้ดตอนแรกเร็วขึ้น เพราะไม่เสียเวลาแปลงโค้ด MSIL ไปยังภาษาเครื่อง