"There is absolutely NO reason to maintain backwards compatibility with previous versions of .NET with new versions. First you're artificially tying your hands, second, since the frameworks can live side-by-side (except the web.config bug between .net 2.0 and .net 1.1 virtual directories) there is absolutely no reason for for it. (ship the version that your application requires with your application!)"
This post from Somasegar makes some sense http://blogs.msdn.com/somasegar/archive/2006/05/18/601354.aspx