Indipendentemente dal tipo di macchina utilizzata, le istruzioni vengono fornite in uno dei due modi seguenti: tramite l'immissione manuale dei dati (MDI) utilizzando un tipo di interfaccia utente integrata nella macchina CNC oppure generando un file digitale mediante il software CAM (Computer-Aided Manufacturing) offline.
Negli ultimi anni, la complessità delle parti è aumentata notevolmente. Questa tendenza, insieme alla crescente pressione per migliorare la qualità delle parti e aumentare l'efficacia complessiva delle operazioni (OOE), ha spinto la maggior parte dei produttori ad abbandonare la programmazione CNC manuale (MDI) e ad investire nel software CAM.
Il software CAM, come Autodesk Fusion 360, viene utilizzato per creare un file digitale (programma NC) che contiene le istruzioni necessarie per controllare il funzionamento della macchina. Il software CAM consente di definire l'intero processo di lavorazione e spesso utilizza un gemello digitale della macchina, degli utensili di taglio e dei dispositivi di bloccaggio che verranno utilizzati. Poiché questa programmazione "offline" consente di sviluppare il processo di lavorazione lontano dalla macchina fisica, i problemi possono essere simulati ed evitati molto prima della lavorazione effettiva sulla macchina. Grazie al software CAM, i produttori possono ottimizzare l'utilizzo delle macchine CNC ed evitare i costosi tempi di inattività delle macchine causati dall'immissione di dati non necessari.