I was recently asked by a developer "I know C++ how do i get into C# and .Net". If you want to understand the language design and its inner workings I would suggest The C# programing Language . If you want to use .Net and C# try Practical .Net and C#