у java популярность за счет того, сколько времени она существует, очень много готовых наработок, легкмая масштабируемость (у .net с этим сложнее), уже готовые виртуальные машины под самые разные платформы.
на винде .net конечно же будет уделывать java, за счет глубокой интеграции в ОС и т.д. на других платформах - не знаю, я лично не тестил, ну и чтоб тесты писать, надо все же оба языка хорошо знать. Ну и скорость понятие довольно относительное
на java Тоже пишут достаточно хорошие и быстрые вещи.
.net на других платформах в принципе обитает довольно давно, благодаря mono.
моно это все же попытка реализовать CLR сообществом и многие довольно скептически к этому относились, а сейчас в игру всё включились сами майки, и из коробки asp.net теперь есть на популярных платформах, конечно пока не в 100% таком же виде, но переезд не так болезненен. Правда с IDE всё пока что грустно, на маках под логом MS VS вышла та же самая моно. но кажется MS CODE "жиреет" в эту сторону постепенно.