I've got CamBam and EstlCam and both have their merits for me. If you've already drawn your object as a dxf and it's only simple machining then EstlCam is great as you don't have to join all the different lines that make up your shape. If you want to just draw something simple and then do the CAM on it then CamBam is good. I don't do anything complicated so can't comment for 3D shapes but for simple things (parts for RC planes, plastic thrust bearings, simple plastic parts etc.) both programs are easy to use and good.