For most all fairly straight forward G-Coding I use BobCAD. I've found it the fastest and easiest on most things.
When I need more complex 3d contouring, I use SprutCAM.
You'll get every combination under the sun for this type of question. The bottom line is to choose one and learn it. They all generate G-Code. It also is a question of value and return on investment.