My learning curve is a little different than yours, but it leads to exactly the same direction. So, I'm also C# developer with basic knowledge about C/C++, but I started my journey with discovering what are internals of .NET - I'm not talking about how does compiler complies code, but about edge between managed code and win32 api.
I've read Advanced .NET Debugging where I was able to become familiar with debuggers different than Visual Studio. Then I skipped to Windows Internals (as @SomeWittyUsername mentioned).