I found a user whose hardware forces me to use .NET 4.0 instead of .NET 3.5 (video driver issue). However, most of my users do not have .NET 4.0. What are good ways of structuring my solution(s) so that I can target both. For this question, assume that I have a MyClass.dll project and a MyApp.exe. Both MyClass and MyProject need to be either .NET 3.5 or .NET 4.0.
Do I have make two solutions? Four projects? Configure output in a certain way? Use links? Thanks. I’m guessing something like this might work (but is it best practice)

In this case, I make the output of both MyClass.dll, match the default namespace.
You can deploy only once and modify App.Config requiredRuntime element‘s section in device that require .NET 4.0 runtime