Difference between PLC and CNC:
CNC (abbreviated as Computer Numerical Control) is a specific application generally used to control a multi axis machine tool like a milling machine or a lathe however as well could be a tube bending machine punch press or alike. The CNC controller is generally a purpose built controller employing a micro computer however could be a common purpose computer or a PLC. The forerunner was NC (abbreviated as Numerical Control) before computers were readily obtainable, it employed solid state logic and relays, timers and so on to supply the application.
A PLC (abbreviated as Programmable Logic Controller) is a common purpose logic controller particularly designed to permit the user to make their own application. They choose suitable I/O (abbreviated as Inputs Outputs) and perhaps function modules for purposes like communications and multi axis servo control and program the PLC to execute the requisite functions.