Have you looked at the XNA game framework using C# and MSVC 2010 Express? (all are free)