Mach is a control software, it has wizards which will do certain tasks for example if you want to do a circular pocket you choose that wizard punch in your dimensions and it gives you the code. Brian Barker does a conversational add in for Mach, basically it joins together all the wizards, allows tool information, feeds/speeds etc and at the end you can get code for a fairly complex part. LazyCAM will allow you to import a DXF etc and you can then choose various options and you will then be able to produce code.
So after saying all this, if you are doing fairly basic stuff Mach with its wizards and LazyCAM is all you will need (CAD program excepted), if you are doing very complex parts then you will need to look at CAM packages as well.
Hood