There's a book called "Windows Systems Programming" that would be a good start. But it's a good idea to actually learn how Windows works behind the scenes, and there are plenty of books that cover that in a more abstract sense. You'll also want to browse MSDN. The navigation on MSDN sucks, but there's a wealth of information once you figure out how to get around.
You'll probably also want to learn the user end of the spectrum, and for that "Programming Windows" by Charles Petzold is the bible when it comes to C. You can also use C++ with .NET (though I don't really recommend it), and since Microsoft is trying to push .NET pretty hard, it wouldn't be a bad idea to learn that aspect of the system as well. That might be a better place to start because you can get more accomplished with less experience and work your way down. Look for any book on C++.NET or C++/CLI, or Managed C++.
Of course, jumping into .NET practically requires also learning C# and VB.NET because of the existing source base and the fact that so many people hate C++/CLI.
For Each ctrl As Control In Me.Controls("pnlMainPanel").Controls
If ctrl.GetType Is GetType(System.Windows.Forms.Panel) Then
For Each subCtrl As Control In ctrl.Controls
If subCtrl.GetType Is GetType(System.Windows.Forms.TextBox) Then
If subCtrl.GetType Is ...