I needed to create a sort of simple API Programmer's Reference for an assembly I'm working on so I figured I'd give SandCastle (an open source project from Microsoft) a try. [more]
SandCastle Help File Builder (SHFB) on the other hand is created by Eric Woodruff and also housed in CodePlex. I've used NDoc before and SFHB has an easy NDoc look and feel.
Need not say more, it just works. Install SandCastle, then SFHB, open SHFB GUI, select your assembly or XML comments (output file from Visual Studio or csc.exe), click Build, wait and after a while you have a CHM documentation.
Of course you have to have comments in your code to generate useful documentation (and although it could take a little or some time, it's always good to have comments) (** Can't confirm if VB.NET has xml comments too or only C# has it).
If you're not familiar with comments then place the cursor on top of a class or method, then press character "/" thrice. You should see a summary comment (which by the way different from the general comment with two "/" only and can be placed anywhere in the class file.
I'm really glad these things just works. You probably need to tweak some things if you need it customized whatsoever but in my case, I'm good where I've come so far.
So here are some links:
SandCastle on CodeProject (a good documentation)