CNC (Computer Numerical Control) programming involves storing machining instructions as a program using letter addresses like G and M codes. This document provides an overview of CNC programming concepts like tool paths, interpolation types, common G and M codes, and the elements of a basic CNC system. It also discusses CAD/CAM software used for designing parts and generating CNC programs, and provides an example APT program for a cylindrical part.