I would like to mention that the Framework version 3.5 or 4.0 are still perfectly valid. There is nothing wrong with these and frankly if you have an application in production I would be very careful before deciding to rewrite. In many cases it would not be the right decision.. However, if you decide to rewrite it will involve manual work, because there is unfortunately no automatic upgrade path between versions.
If you have a 'green field' project (meaning a project that is just starting) I would suggest you use the latest version (4.5). However, even if you use 4.5 there is nothing wrong with borrowing some additional techniques and concepts from the older versions if you need these.
Hope this helps.
Jack Poorte, Feb 02, 2014