I've been using CAMWorks for over 15 years and have not had any issues, I program quite complex parts daily with it. Recently SolidWorks released their SolidWorksCAM that is included with SolidWorks, that is essentially CAMWorks, from what I've heard and can tell its pretty basic though. I have the CAMWorks Milling Professional Package.
It was about 3 years ago I bought my own seat of SW/CW and had been a long time CAMWorks user, and have had experience/used other software, MasterCam, SurfCam, BobCad. I wanted to give everything an option being I was about to just drop over $10k on a seat. The only thing IMO I found comparable to CAMWorks was Siemens NX. And after doing a lot of research one thing everyone should do when looking at software (any software) is research. I found that a majority of these CAM software's license their toolpaths from ModuleWorks and MachineWorks, so behind the scenes the software is generating the same toolpath, the only thing different is what you see and how CAMWorks implemented "Toolpath X" into their software lay out. I tell everyone looking at CAM software to keep this in mind, IMO ones is NOT better than the next, what makes a software better is solely opinion and how well you can comprehend and understand how the toolpaths were implemented within the software's settings.
You can go to both the websites listed above ModuleWorks.com and MachineWorks.com and view their partners and see all the CAM partners they license toolpaths to.
One thing I've noticed over the years reading forums and seeing new users try it, they are 3 days in and cant figure out why the feature recognition isn't perfect. Well it takes time to make it work how you want, everyone programs differently, over 15 years and I'm still making adjustments, adding to my TechDB to "perfect" the way it does things.
I actually don't utilize the feature recognition as much as I could, I use it mainly to recognize holes, tapped, reamed, counterbore, etc. I've had parts with over 600 holes with 30 different sizes and I can have it programmed in 5 minutes with speeds and feeds, using feature recognition and with a TechDB that has been fine tuned to pull pull out my spot drill, leave the correct size chamfer based on hole properties, pull the correct drill and tap, drill and reamer all based on material selected. If my hole exceeds my spot drill diameter size it knows to grab a chamfer tool and put a .01-.015" chamfer on the edge.
I also see a lot of comments "I found it hard to do......" Fixtures is a big one.....It's lack of experience. It's no different than building an assembly in SolidWorks, define your mates in assembly mode and than once you start programming it damn near walks you through telling it what part is being programmed and what parts are fixtures and it gives you an option to tell it how far you want to keep tools and holders away from any defined fixtures for every operation generated.