LinuxCNC (the Enhanced Machine Control) - LinuxCNC: an open source CNC machine controller. It can drive milling machines, lathes, 3d printers, laser cutters, plasma cutters, robot arms, hexapods, and more.
FreeCAD - An open-source parametric 3D modeler
SolidCAM - The ‘Best-in-Class’ CAM Solution for Efficient & Profitable CNC-Programming Inside Your CAD
SketchUp - 3D for Everyone
Mach3 - Mach3 is very popular among the Hobby CNC community.
LibreCAD - An open source 2D CAD application for Windows, Apple and Linux.