.NET is Compile Time OR RunTime Environment?
.Net's framework has CLS,CTS and CLR.CTS checks declaration of types at the time when u write code and CLS defines some rules and restrictions. And CLR comile everything at runtime with following benefits:
Vastly simplified development
Seamless integration of code written in various languages
Evidence-based security with code identity
Assembly-based deployment that eliminates DLL Hell
Side-by-side versioning of reusable components
Code reuse through implementation inheritance
Automatic object lifetime management
Self describing objects