Мои главные мысли по этому поводу:
Silverlight совместим с различными браузерами. То, что вы видите в IE, - это то, что вы получаете в FireFox, Safari и то же самое в версиях браузеров Apple Mac. Если ваше приложение является приложением для интрасети, ASP.Net, вероятно, будет реализовано быстрее, однако, если вы пытаетесь написать интернет-приложение, Silverlight предложит это в качестве основного преимущества. Разработка веб-сайтов, чтобы они выглядели одинаково во всех браузерах, - огромная боль.
Silverlight имеет ограничения безопасности с точки зрения типов услуг, к которым он может получить доступ, и того, что вы можете делать с данными. Это связано с тем, что плагин выполняет весь код на стороне клиента, поэтому, очевидно, MS не хочет, чтобы плохие плагины загружали троянских коней и т. Д. ASP.Net имеет некоторые ограничения безопасности, но большая часть кода выполняется на веб-сервер.
Оба могут использоваться бок о бок, так что вы можете смешивать и сочетать, однако я думаю, что это два технологических стека, которые нужно изучить, когда нужен только один.
В Silverlight 3, который, по слухам, будет выпущен 10 июля (SDK уже доступен), вы можете удалить приложение Silverlight из браузера, поэтому если вашему приложению может потребоваться работать в автономном режиме, вы можете загрузить файл данных в изолированное хранилище, а затем работать с данными из файла данных, а не из служб. Затем, когда приложение снова подключится к сети, вы можете синхронизировать файл данных с базой данных.
Silverlight 3 позволяет создавать анимации, которые полностью используют графическую карту вместо максимальной загрузки процессора.
По моему мнению, Silverlight быстро станет основной платформой Microsoft для веб-приложений, объем инвестиций и ресурсов, которые они тратят на проекты Silverlight, показывает, что MS тоже так думает.
Как вы можете сказать, я довольно пристрастен к Silverlight.