У этих языков идентичная область использования. Собственно, одной из целей создания C# было вытеснение Java из Windows-разработки.
Это языки для написания широкого спектра прикладного софта - без "заточенности" под какую-то узкую область использования.