To be perfectly honest, I do not think anybody does the ANSI style flowcharts like they did in the 1960s anymore. We did it in high school as an exercise, but it is rarely done professionally.
There is a neat program that works with the TeX and/or LaTeX tools called flow. I think the specific filename is "flow.c". It is located over at CTAN, if you are interested.
The original flow charts modeled control flow. Once people stopped writing Spaghetti Code, interest in these kind of diagrams dramatically dropped off. One could simply look at the code to discern the flow-of-control. This turned out to be a major benefit of structured programming, despite being declaimed by nay-sayers in the 1970s and early 1980s.
Three types of diagrams which are sort of popular at the moment are:
1. ERD diagrams, for relational databases
2. dataflow digrams, to simply decomposition of large information systems
3. UML diagrams, a whole suite of standardized diagram types for documenting object-oriented programming systems
Inline documentation has become a very popular, effective form of documentation for Java and Ruby programs. A tool like the "javadoc" or "RDoc" command runs in seconds, if that, and produces very nice, easily navigated hypertext documentation describing the system created in detail. It helps kind of, if you actually include explanations of what thing are.
There is a nice diagram description language called "pic" that was invented back in the early days of Unix. These days there is a free implementation called "gpic", from Project GNU. It is declarative, pretty powerful, and pretty simple.
A diagramming tool I really like a lot is GraphViz. It comes with a command line tool called "dot" and a GUI program called "dotty". The GraphViz language is as simple as a diagram description language could possibly be.
The dot command can output diagrams in a huge variety of formats: GIF, PNG, JPEG, SVG, etc.
It is very fun to work with and easy to learn. I suggest trying it out, seeing if it works, and then moving on to try something else if it seems unsuitable - which is unlikely.
There is a free program for drawing diagrams by hand called Dia Draw. It is pretty good, and comes with UML diagramming templates and others, or they are easily available.
There is a diagram drawing program that comes with the Professional version of MS Office for MS-Windows. There is a very simple diagramming tool built into MS-Word, too. Of course, these are very expensive - costing hundreds of dollars.
While diagramming is probably more popular now than it was in the 1970s and 1980s, the old-fashioned flow-of-control "flow charts" are pretty much dead.
Personally, I greatly prefer the diagramming tools that let me "describe" the diagram - while the tool worries about the vagaries of laying it out. It is easy to get it into the computer that way, and far easier once things start moving around. Hand drawing diagrams is sometimes preferable. But in my experience, not usually!
Lots of programmers generate their GraphViz diagram source files directly from metadata about their program, classes, or database. Then they run the "dot" command on that, and "poof!" out comes a freshly-baked, up-to-date diagram.
In a VB.NET program, you could generate UML style diagrams of your modules, as well as a deployment diagram. I think VB has something like classes now, right? You could generate class hierarchy diagrams UML style with GraphViz or draw them with Dia.
I have included links to some other programs that might interest you too. It would be cool if someone made a program like Doxygen for VB.NET, but so far I have not heard of one.