I haven't done a significant level of debugging in 4.02 yet, but it seems to me that you're not really past the learning curve on debugging the web process in general, but you're getting there which is good news.
When you make your module (I refrain from using private assembly for various reasons), you should be producing a DLL file. I'm sure there is some mechanism by which you don't have to produce one, but in nearly every module I've developed, I've used DLL files. If you "build" the DLL file using the "Release" profile, the DLL will generally exhibit three traits: it will load faster, be smaller, and can not be used for debugging at the "easy" level. Using the "Debug" profile will build both the DLL that can be debugged as well as the PDB file containing the symbols.
You have to 1) get the module installed, and then 2) have both the symbol and DLL file in the bin directory or from wherever you have DotNetNuke pulling DLL files for core/module.
Launch the site, launch the debugger, bind to the process, load the code file you want to debug, set the break point and browse the site till you get to that point. It should work. If it doesn't, you've missed something somewhere.