La "potenza" di un linguaggio non si esprime con il numero di features che implementa, ma con il range di problemi che può risolvere.Originariamente inviato da Who am I
Sono "due titani" questi linguaggi, è difficile fare un paragone.
La cosa più notevole è che Java come ha già detto l' utente sopra di te, è multi-piattaforma, però a mio parere il C# è molto più potente, ci fai molto di più in termini di rapporto qualità dell' applicazione/tempo.
Tipicamente i linguaggi ricchi di features cercano con quella caratteristica di colmare la loro mancanza di potenza in quanto con il linguaggio stesso non sarebbe possibile replicare le funzionalità che la libreria fornisce.
La produttività è un altro fattore da considerare, piace moltissimo ai manager delle software house ma di solito il prodotto risultante è destrutturato, gli oggetti poco riutilizzabili, etc. etc...