C# хотели поначалу назвать Microsoft Java, пока Sun не пообещал мелкомягким анальные кары. Так что синтаксические различия минимальны. Основные различия - в библиотеках и фреймворках.
Они оба относятся к ООП, оба очень похожи. Применение у них часто разное. Различия тоже есть. С# более функциональный, в нём больше фишек. В Java есть анонимные классы, которых нет в C#. В C# есть много других вещей, которых нет в Java: опциональные параметры, лямбда-выражения. Асинхронное программирование в C# на голову более продвинутое. И так далее.
C# уже подустарел. единственное нормальное применение - Enterprise, но и там он далеко не #1 Java актуальна. для Enterprise и для Android. подробнее необходимо самому изучить
Оба применяются в энтерпрайзе. C# в целом работает быстрее и лучше обращается с памятью. + Там, где у явы костыль, у него встроенная фитча. Единственное, что юзабельный .net core появился лишь года три назад; поэтому его популярность лишь недавно начала набирать обороты. Более детально разбирать не буду, ибо не многое знаю о Java в целом, но уже ясно, что сей язык скоро (максимум через лет 5-10) окончательно умрет (его удерживают на плаву компании, которые успели написать жирнючие кодовые базы для своей бизнес логики), а его место займет C#.