Me resulta gracioso que digas todo eso de Java cuando C# empezo siendo una copia de Java (entre otros lenguajes).
Las copias de Java por parte de Microsoft fueron "J++" y "J#".
C# es un lenguaje que recoge lo mejor de Java (librerias, sintaxis, recolector de basura...), lo mejor de C++ (dar control al programador), y corrige varios "inconvenientes" de Java (no por esto C# deja de tener inconvenientes, que tambien los tiene).
Si nos centramos en lenguaje de programacion para aplicaciones comerciales, si son para Windows, C# le da 1000 vueltas a Java (MS: yo me lo guiso, yo me lo como). Multiplataforma, lo mejor es Java. Para web quizas jsp es mejor que asp.net, aunque que coño.. para eso esta php, no? XD
Para juegos, Java no es ni siquiera una opcion a tener en cuenta. Claro que se pueden hacer juegos en Java, al igual que se pueden hacer en ensamblador 8086 o en tarjetas perforadas, pero existen alternativas mejores