Оба варианта являются жизнеспособными.
Java официально поддерживается на всех трех платформах.
C # может использоваться в Linux и Mac, если вы готовы использовать подмножество .Net, поддерживаемое Mono .
Что больше подходит, зависит от того, с чем вам удобнее работать, и от конкретных требований приложений, которые вы будете разрабатывать.