В сущности, различий между ASP.NET версий 2.0 и 3.5 не так много: в 3.5 добавились кой-какие интересные компоненты и всякие прочие примочки, но суть осталась та же, так что изучение вполне можно и с 2.0 начинать.
ASP.NET и ASP.NET MVC отличаются, я бы сказал, концептуально.
Первый представляет собой компонентно-ориентированный фреймворк (а-ля Delphi) с широкими возможностями визуального программирования (WYSIWYG, всеми обожаемый). Это дает возможность достаточно быстро стряпать приложения, однако такой подход вызывает тонны страданий, когда от компонентов требуется какое-то нестандартное применение.
Второй фреймворк несколько более суров: HTML-представления в нем создаются практически вручную, безо всяких там компонентов и визуальных дизайнеров (хотя можно использовать сторонние). Опять же, требует хорошего понимания концепции MVC (советую, кстати, с ней хорошенько ознакомиться). Из плюсов: большая гибкость и более полный контроль над разметкой получаемых страниц. Как следствие: более чистый и легкий код HTML-представлений, более простая поддержка всяких клиентских технологий (поддержка AJAX обычным ASP.NET'ом заставляла меня горько плакать), более качественное разделение представлений и бизнес-логики.
В общем, лично я предпочитаю ASP.NET MVC: сначала придется повозиться, зато потом удобно чрезвычайно.
Что до SQL, тут особой разницы нет, какую версию брать. Я бы посоветовал не ниже 2005. Возможности, появившиеся в более поздних (2008, 2010) версиях вам, вероятно, на данном этапе просто не понадобятся. Если до них таки дело дойдет, перейти с 2005 на 2008 не составит большого труда.