I do 3d modeling, CAD, CAM and CNC stuff on an almost daily basis.
This is the big machine I get to play with at a company called Cybershapes where they normally do surboards and such.


You can see more from that project here:
http://www.easyracers.com/pod/web/Check out Solidworks and Surfcam as the defacto standards for design and machining.
Not sure what ripsnort was talking about.
You use CAD (Computer Aided Design) software to design your stuff. AutoCAD, Solidworks, even programs like Rhino3D.
You use CAM (Computer Aided Machining) to generate "G-Code" which is the common language ALL CNC machines use for their directions. Some CNC machines only support some "G-Code" or have their own proprietary languages. Most CNC machines come with a "post-code" that plugs-in to your CAM software that tells it how to properly implement the g-code for that particular machine.
Once you get everything set up and running properly it's incredibley powerfull and relatively easy. I watched a machinist with 25 years of experience practically break down and cry when a relatively new machinist/computer geek (me) started making parts that he simply never could.
I can draw up a relatively simple part, generate the g-code and be cutting the part in less than 15 minutes.
g00b