My personal preference is Eagle with the pcb-gcode ulp that will generate the necessary gcode files to do the milling and drilling. A bit of a learning curve, but the results are good. As noted above, it is free for "small" sized single and doublesided boards.