Ich kann leider selbst kein gutes C# Buch empfehlen. Da sich Sprachen und Tools aber weiterentwickeln würde ich auf jeden Fall darauf achten, dass es möglichst aktuell ist. Wenn du absoluter Anfänger bist finde ich folgenden Online-Kurs (eine Reihe von videos) von Microsoft sehr gut:
http://channel9.msdn.com/series/C-Fundamentals-for-Absolute-Beginners/01 Dort lernst du auch den Umgang mit Visual Studio.
Generell bin ich der Meinung, dass die meisten Online Tutorials kein Ersatz für ein
gutes Buch sind, weil sie oft nur einen sehr kleinen Themenbereich abstecken. Wenn ich dann "Hello World" und Schleifen von einem Tutorial gelernt habe muss ich mir wieder ein anderes Tutorial zum Thema Klassen suchen, das vielleicht einen anderen Stil hat, andere Tools nutzt, für ein anderes OS gedacht ist (bei C# vielleicht weniger ein Problem) oder von einem Wissensstand ausgeht, den ich nach dem ersten Tutorial gar nicht habe.
Davon abgesehen bringt das Lesen von Büchern bzw. Ansehen von Videos alleine meistens auch nicht viel. Du solltest die Beispiele auch tatsächlich selbst programmieren.
Ich persönlich bin übrigens auch kein Fan von dem Ansatz "Um C# zu lernen lerne ich erst Assembler, dann C, dann C++, dann Java und schließlich C#" oder "Bevor ich Sockets verwende sollte ich verstehen, wie sie implementiert sind", aber diese Diskussion würde ich lieber in einem separaten Thread führen (falls Bedarf besteht).