I've read a few reviews of C# and I was understanding that it would only work on MS products, not be universal. Microsoft sems to deny that C# is targeted as a Java replacement but it sure seems like thats what they are doing. It includes features to make C++ easier to use such as garbage collection. (ahem already in Java) An internal report circulated through Microsoft a few years ago discussed the possiblily of creating a Java like language that would be controlled by MS.