Going from an idea to CNC Machine
Going from an idea to cutting your design on a CNC machine is a relatively straight forward conceptual process. Though, each step has its complexities. There are tools of varying sophistication - some easy and some complex.
You first create your design in a CAD program. There is an incredible range of offerings available from free to very expensive and simple to complex. Commonly used ones are Fusion 360, FreeCAD, Sketchup, VCarve and others. CAD resources
Once you have created your design, you need to turn it into something the CNC machine can understand - GCode, the language of CNC machines. For this, you will use a CAM program. Some CAD programs have these capabilities built in and there are stand alone CAM programs as well. A CAM program needs to know about your CNC machine: size, steps per inch/mm of the axes, types of bits you will use, how deep you can cut, spindle speeds, maximum movement speed and so on. It then creates the GCode that tells the machine how to cut your design. CAM Resources
When you have created your GCode file, you need to use a GCode Sender to send the code to the GRBL motion controller on your CNC machine.
The GCode Sender can use USB to communicate with your CNC Machine.
Or, it can use Ethernet. Ethernet is more reliable and error resistant than USB. Though, USB works fairly well and is easy to set up and use.