Рекомендовал бы в связке такие книги:
Трей Нэш — C# 2010. Ускоренный курс для профессионалов.
Чем хороша: достаточно глубоко рассматриваются именно основы C#, достаточные чтобы въехать в особенности языка и CLR, основы правильного дизайна. Затронуты все более-менее важные вещи, такие как обработка исключений, массивы, коллекции, строки, делегаты/лямбды, события, генерики, многопоточность.
Есть главка с попытками собрать идиомы C#, полезно длz начинающих. Кроме того, автор неравнодушен к функциональному программированию и достаточно подробно рассматривает средства ФП, которые появились в C# 3.0 (LINQ, лямбды).
Упомянутый уже Рихтер, который, в общем-то, не учит C#, но подробно объясняет тонкие вопросы платформы .NET, о которых рано или поздно придется заиметь глубокое представление.
Возможно, для того чтобы «надо быстро сделать вот это» хорошим выбором будет книга Allen Jones, Adam Freeman — Visual CSharp 2010 Recipes. A Problem Solution Approach, там возможные вопросы по работе разбиты тематически на главы, ставится проблема и дается решение, например:
3-1. Create an Application Domain
5-1. Retrieve Information About a File, Directory, or Drive
6-2. Insert Nodes in an XML Document
Также, есть книжечка Anders Hejlsberg, Mads Torgersen, Scott Wiltamuth, Peter Golde — The C# Programming Language
Это, пожалуй, своего рода спецификация, читать ее было нудновато, но зато там есть комментарии уважаемых людей, почему именно так, а не эдак, советы всякие. Но это для продвинутых уже, пожалуй.