CNC machines come in various styles with varying capabilities. I am looking at getting a small CNC for the shop. It would be a gantry style. Only suitable for soft materials and things like DiBond.
The other end of the spectrum are the VMC's or vertical machining centers that make parts out of aluminum, steel, etc... They are built from huge castings to maintain the necessary rigidity to machine metals accurately and efficiently.
Both require you to at least know AutoCad or Solidworks or similar programs. Then be able to do the necessary toolpathing. Setting toolpaths is critical to getting the surface finish and high production rates you want without breaking cutting tools or ruining parts.