Вот например в нашем проекте выбор диктуется другими критериями нежели, количество нажатых кнопок. БД Oracle, сервер приложений Linux => J2EE на стороне сервера. Windows на клиенте + много 2D/3D графики => .NET, WPF, WCF. Теперь пытаемся подружить эти инструменты, а это скорее всего значит, что придется отказаться от всех готовых фич обоих платформ, ориентируясь на спецификации WS-I, и реализовывать в ручную такие "стандартные" вещи как аутентификация, шифрование, сессии, транзакции.