Я уже довольно давно использую Silverlight и изучаю Windows Phone 7.
Конечно, это очень похоже.
Однако, на какие главные проблемы стоит обратить внимание?
1) Это бета-версия/предрелиз. Содержание может быть изменено в процессе работы. Имейте в виду, что API и т.д., на основе которых вы разрабатываете, могут претерпеть некоторые изменения между настоящим моментом и датой выпуска. В дальнейшем будет еще больше изменений; будьте реалистичны и терпеливы в своих ожиданиях.
2) Для разработки Silverlight это Silverlight 3++, а не Silverlight 4. Изучите и узнайте границы и поведение Silverlight в целом, а затем сосредоточьтесь на различиях между SL3 и SL4.
3) Навигация похожа, но отличается от "обычной Silverlight'овской" - идея о том, что вы "иногда" можете захотеть воспользоваться навигацией в обычном Silverlight, была закреплена и предполагается, что вы действительно хотите перемещаться между страницами в Phone. (См. здесь)
4) Несмотря на то, что элементы управления/эксперименты Panorama и Pivot являются частью рекомендаций по дизайну, эти элементы управления еще не доступны в качестве части инструментов разработки (в Интернете есть инструкции по созданию собственных элементов управления) (Подробнее здесь...)
5) Когда вы взаимодействуете с внешней службой, ваше приложение передает управление другому приложению. Не существует API для "получения списка контактов"... вы запускаете Contact Chooser, затем, когда контакт выбран, ваше приложение снова вызывается и возвращается значение. (More)
6) Эмулятор ограничен (недостаточен?)... не ожидайте, что сможете взаимодействовать с аппаратными сервисами (GPS, акселерометр и т.д.) из эмулятора. Если вы хотите сделать это, то, по крайней мере, сейчас, вам понадобится настоящее устройство.
7) Недостаток эмулятора... программные сервисы недоступны (пока) через эмулятор. Если вашему приложению необходимо взаимодействовать с некоторыми концентраторами или другими программными средствами (например, для выбора контакта), они недоступны (по крайней мере, без "разблокированного" эмулятора)
8) Узнайте о том, что такое tombstoning. Ваше приложение может быть закрыто на полпути его работы (если пользователь нажмет кнопку "Пуск" и т.д.), и хотя у вас есть возможность сохранить и восстановить состояние, вы несете ответственность за сохранение и восстановление состояния. (Подробнее)
9) Понимание Push-уведомлений. (Подробнее здесь)
10) Это 1.0. В дальнейшем будут появляться новые версии; будьте реалистичны и терпеливы в своих ожиданиях.
Отсутствие сокетов - это одно, что приходит мне на ум. Отсутствие локального хранилища - еще одна.
Upd: я поправлюсь: нет хранилища базы данных, присутствует только изолированное хранилище.
При запуске эмулятора имейте в виду, что эмулятор будет работать на частоте ЦП вашего компьютера, а НЕ на скорости физического телефона, которая может быть намного медленнее. В какой-то момент вам придется протестировать свой код на реальном устройстве, чтобы убедиться, что он не работает слишком медленно.