Если вы обладаете достаточным опытом работы с Java, C # очень проста. Это та же идея с разными возможностями и реализацией. Таким образом, классы ваших коллекций имеют разные имена, генерики выглядят немного иначе, а ваши потоки выполняются немного по-другому. Подумайте о вещах, которые вы часто делаете, и об объектах / платформах / библиотеках Java, которые вы часто используете, и просто найдите .Net эквиваленты.
Я не верю, что в Java существует что-то похожее на LINQ, так что это действительно крутой аспект программирования .Net, на который стоит взглянуть. Эта книга содержит краткое краткое описание концепций LINQ, а остальные можно использовать в качестве справочного.
Silverlight / XAML / WPF довольно прост, но он поставляется с действительно большой платформой и множеством вещей для изучения, потому что он очень гибкий. http://silverlight.net/ и http://windowsclient.net/learn/ есть несколько отличных видео, чтобы вы могли выбрать одну или две функции, которые можно использовать в качестве основы для ускорения работы с рядом концепций silverlight, c #, .net и т. Д. как будто у вас нет времени, чтобы снять несколько книг, поэтому эти видео должны быть довольно крутыми, и есть из чего выбирать.
Что касается того, что конкретно нужно узнать о Silverlight, я бы сказал, что привязка, пожалуй, самая крутая функция. И посмотрите на анимацию, потому что это действительно классный аспект, который довольно легко реализовать.
Вот чит-лист PDF для привязки выражения PDF для использования в качестве справочного материала. И здесь - довольно простой пример выполнения анимации Silverlight в C #.