Wouldn't the purpose of using a JIT Compiler intermediate to allow code to run on different OS's and Hardware? But .Net is only used for Windows/x86?

So what would be the point of using .Net, when you have this VM overhead affecting performance, as well as creating a download requirement for users (in case someone doesn't have the latest framework installed).

Also, would it ever be possible to develop a resource intensive program like a computer game using a JIT compiler like Java or .NET?