2.0 vs 3.5 is the really weird one. 3.5 is just 2.0 with stuff added.

Like Andy, if I'm deploying a 2.0 project I make sure 2.0 is installed. All of these versions of .net can live along side each other.

Basically, I'd run whatever it is that needs to be run- either it will work or it won't. You won't get a situation of strange behavior by having the wrong version installed.

The reason for all of the versions is that MS has been constantly improving the capabilities of the .net framework, and overall they've been really good improvements. Being used to working in 4.0, I really struggle when I move back to 2.0 projects (which I've had to do recently). Yes, we get pampered with all the new stuff- but at least it's not bloat.
_________________________
-Jeff
Rome did not create a great empire by having meetings; they did it by killing all those who opposed them.