First, the code in the link, is
not mine (I just found the cool link).
The link takes you to the "CodeProject" site, shows you how to build your own g-code plotter, in VB.Net 2005 (Free from MS).
The source may not be complete, for all your needs, but I'm sure the coder did at least 75% of the work already.
This is by far the best in vb.net 2005 that I've found.
http://www.codeproject.com/vb/net/CNC_Viewer.asp
I added a couple of basic things to the code that I downloaded, like a button for auto plot (similar to NcPlot), & RTB for the g-code.
This code is great for learning.
Screenshot: