I don't understand all you people saying don't do it. .NET 2.0 is the current (CLR) runtime. .NET 3.0 and .NET 3.5 both run on the 2.0 runtime. Moving to .NET 3.5 to get the C# 3.0 features is literally a matter of changing a single dropdown in your project properties. (OK, and deploying the 3.5 runtime to your target machines if you use some 3.5 features such as LINQ, etc. If installing 3.5 is an issue then it's not such an easy answer.)