Question: What makes .NET a platform on which programs written in different languages can cooperate seamlessly?
Answer: The Common Language Runtime (CLR) defines a virtual machine with a Common Intermediate Language (CIL) and a Common Type System for all .NET languages. Programs written in C#, C++, Visual Basic .NET and other languages are compiled to same kind of CIL code for this virtual machine. Only at load time are they compiled to machine code (e.g. to Intel code). The architecture of the Common Language Runtime is therefore the link between the different languages and guarantees interoperability.