CNC machining refers to machining performed with CNC machining tools. CNC machine tools are programmed and controlled by CNC machining languages, usually G codes. CNC machining G code languages tell CNC machine tools what Cartesian position coordinates to use for machining tools, and control the tool feed speed and spindle speed, as well as tool changers, coolants and other functions. CNC machining has great advantages over manual machining, such as the parts produced by CNC machining are very accurate and repeatable; CNC machining can produce parts with complex shapes that cannot be completed by manual machining. CNC machining technology is now widely promoted, and most machine shops have CNC machining capabilities. The most common CNC machining methods in typical machine shops are CNC milling, CNC turning and CNC EDM wire cutting (electric spark wire cutting).
The tool for CNC milling is called a CNC milling machine or a CNC machining center. The lathe for CNC turning is called a CNC turning center. CNC machining G code can be programmed manually, but usually the machining workshop uses CAM (computer-aided manufacturing) software to automatically read CAD (computer-aided design) files and generate G code programs to control CNC machine tools.

