Well, the "problem" with C# is, it's a multi-paradigm language, the most prominent aspects being:
It is hard to teach C# and the most common patterns employed without trying to explain all of them at once. I guess that's why most introductory books will only skim that, because honestly you could fill a bookshelf explaining the mechanisms and the strengths and pitfalls of every single approach, and then their combination.
If you're in a hurry to learn C#, learn C# first and then go into detail when you're having trouble to decide how to solve specific problems you encounter (asking here should get you good pointers or even the answers you're looking for).
To anybody who wants to "work their way up" from the bare bone basics I suggest starting with Ruby, for a number of reasons:
- It has quite a low entrance barrier and requires no boiler plate code. When you write your first Ruby program, you only see code that you completely understand.
- It is purely object oriented. You can concentrate on understanding that approach.
- It is dynamically typed. From a beginner's perspective, this is desirable, because you don't have to understand the intricacies of static type systems to write code. You can focus on creating type relationships in your head, rather than spending time on communicating them to your compiler.
- It will slip in functional programming very naturally, without you even really noticing at first.
Even as an experienced programmer, Ruby will deepen your understanding of OOP (unless you already know Smalltalk, Io, CLOS or something of that kind). And as a beginner, it is a very unobtrusive approach to the subject.
Of course starting with Ruby if you're aiming for C# is a bit of a detour. But IMHO it's worth it, if you can spare the time.
But one thing you should know is: To truly understand the purpose/role/place of an approach/paradigm/strategy/pattern/idea, you must test it in the field and that means gathering experience by trying to fit it into a project of considerable size and life time.
No book, no matter how well written, no guru, no matter how wise, can provide a substitute. They are good sources of guidance, but looking for one that will give you all the answers in a blink of an eye is waste of precious time that you could spend learning from your own mistakes in your attempt to put to practice whatever answers you do get your hands on.