If you're a developer have a look at openscad: you can "program" your model. if you need fancy features like fillets however, that's rather difficult in openscad.
Fusion360 used to be free but that appears to be ending, also cloud-based lock-in(files are on server).
freecad used to be quite buggy, but latest versions are quite workable.
I mself started with one or 2 tutorials in fusion 360 (they appear to be more clear to me compared to the freecad tutorials, and concepts are the same). Then switched to freecad, and this seems to work fine.
The parametric sketching (although a simple concept) took for me the most time to really grasp and understand the significance.
To be fair, you have to tolerate bugs in commercial products as well. The AutoDesk products I use for work crash daily. If you look at the developer documentation, though (https://www.autodesk.com/developer-network/platform-technolo...) you kind of get an idea of how mind-blowing complicated this software is. Any particular part might be implemented in C++ or .NET or VBA or a custom Lisp. There's maybe 30ish years of layers AutoCAD is built on. After a few weeks of learning F# and the ACAD API, I concluded that I would much rather just do everything manually than ever write a plugin.
Bear in mind, though that everything else (Microstation, DraftSight, etc.) Aren't much better. For a problem domain like roadway design, the difference in productivity between something like freeCAD or LibreCAD and AutoCAD Civil3D is like the difference between having a printing press and a lump of charcoal. I really admire the effort, but there is a moat between industrial and FOSS software for the AEC industry that takes more expert developers and more man-years than hobbyists can provide.
wow, thanks for getting my attention to CadQuery. It looks really promising! It has some of the things I've come to depend on in Fusion 360 which makes it hard to go back to OpenSCAD: workplanes, construction geometry, fillets, etc
Fusion360 used to be free but that appears to be ending, also cloud-based lock-in(files are on server).
freecad used to be quite buggy, but latest versions are quite workable.
I mself started with one or 2 tutorials in fusion 360 (they appear to be more clear to me compared to the freecad tutorials, and concepts are the same). Then switched to freecad, and this seems to work fine.
The parametric sketching (although a simple concept) took for me the most time to really grasp and understand the significance.