Вы можете реализовать .Net 4 выше своего стека, например, в виде пользовательского интерфейса, и при этом использовать .Net 3.5 на более низких уровнях, таких как доступ к данным или бизнес-уровень.
Однако нельзя использовать .Net 4 на более низких уровнях, таких как доступ к данным или бизнес-уровень, и .Net 3.5 на пользовательском интерфейсе, если только изменение границы CLR не разделено чем-то вроде WCF, позволяющим каждому запускаться в своем собственном домене приложений. Попытки использовать ссылки .Net 3.5 из .Net 4 приведут к ошибкам компиляции, говоря, что dll не присутствует.