Quick introduction to .NET
.NET is Microsoft's stack-based virtual machine for running managed code and an application framework.
At present moment, you can not run .NET natively on any processor (but perhaps see my article on the topic of Hardware support of the current stack-based virtual machines), so you need a .NET framework to run the managed code. For Windows, there is the fully featured and smoothly running .NET 3.5 available, for Linux there is the Mono project, which is pursuing to implement Windows-equivalent functions to the Linux environment, but as far as I tried, you yet can't rely on this being the same as the Windows .NET framework.
Comparison of .NET and Java
I've been programming in both Java and C# for some time now, and so far I haven't seen a brief summary or comparison of these technologies, so I made my own one.
