Microsoft Dynamics CRM 4.0 (Titan) uses the .Net Framework 3.0, this is the officially supported version. To be on the safe side you can continue using the .Net Framework 2.0 and 3.0, if you use the .Net Framework 3.5 make sure that your servers are current with the version and make a lot of testing before move to production.
The CRM Team blog mentioned the following when creating plug-ins using .Net framework 3.5:
"If you develop a plug-in using 3.5 and refer to the LINQ libraries, and then deploy it to a server without the framework 3.5, your plug-in will fail because those libraries aren't installed"
"Stay on the safe side and use the .Net Framework 3.0"
Well I will be making my plug-ins only using the .Net Framework 3.0 (.Net Framework 2.0 and exploring with WCF, WPF and WF). Have fun and remember to test, debug and only deploy when you are confident that your plug-in and custom workflow are stable and reliable for production.
Abraham Saldaña --- Crmbuzz.net