Что касается языка, то тут много похожих моментов как и различий.В первую очередь в C# в подавляющем количестве случаев вместо геттеров/сеттеров используются автоматические свойства, также в C# вам предстоит освоить библиотеку TPL(async/await , IAsyncResult , Parallel.Foreach()... etc), которая содержит много синтаксического сахара для создания многопоточных приложений и язык LINQ/PLINQ(Parallel LINQ) который используется для создания запросов к коллекциям, XML-кам и Relational базам данных.В C#, в отличие от java для реализации событий используются делегаты (Event) вместо экземпляров обработчиков, также для реализации lambda выражений в C# используются анонимные методы и тут нет функциональных интерфейсов .Что касается самой платформы .NET - вам предстоит увлекательный путь изучения недр CLR и DLR.