I'm not so sure about the under-workings of C#, but if you know C++ and/or Java, you know C#. Its similar to Java in that it has garbage collection (from what I can tell) and it runs in a virtual machine called the .NET framework. I assume that if the framework was to be ported to other operating systems that the code would be portable, like Java. There is an effort to create an opensource version of .NET called
Mono I haven't looked much into that side of things.
.NET gets attention because of two things: it is Microsoft's next development environment, and it is another launching pad for web services. Its not going to revolutionize the market place anymore than J2EE has, because it doesn't offer anything new...its just another flavor to choose from.