.NET 2.0 и .NET 3.0 / 3.5 используют одинаковую среду выполнения 2.0 .NET. 3.0 добавлены WCF WPF WF и Cardspace, 3.5 добавлены Linq et al. только через библиотеки.
Если вы используете VS2008, вы можете скомпилировать приложения, используя функции csharp 3.0 (лямбда-выражения, анонимные типы, анонимные методы и т. Д.) И по-прежнему запускать их в среде выполнения 2.0, если вы настроите свой проект на целевую среду 2.0.
Чтобы использовать функциональные возможности одной из библиотек 3.0, пользователю необходимо установить инфраструктуру 3.0.
Полагаю, если вы сможете более точно определить, что вы подразумеваете под приложением 2.0, это было бы полезно. Вы имеете в виду, что ваше приложение должно работать без установленных 3.0 и 3.5? Ты имеешь в виду, что твой босс не позволит тебе изменить роллдаун в настройках проекта на 3.0?