C# is java-like, and not all that bad, but being tethered to microsoft's .net framework it is destined for obsolescence

java can and will innovate wider and better and do it without losing cross-platform support, it is already stable on every major architecture that we will ever build personal computing devices with

JDK 8 will be bringing in all the features that C# now has, and they are so esoteric (e.g. true lambda functions and closures) that nobody even cares that C# had them first