CAML is hard to learn, and dificult to use, is there a better way to get results from MOSS, besides using CAML queries? And not referring to the Web Services, which are slower, or the object model, which again is slower.
I depends on what you want to do.
You can also use the MOSS search engine to search for documents.
Essentially, yes, you need to at least be able to read and understand CAML. However you can probably get out of writing it. I use these two tools and they're great:
U2U CAML Query Builder by U2U (good but buggy) - download and as a SharePoint feature
Yet Another CAML Query Tool by Carlos Segura Sanz (good if you know SQL) - download and online
There is also a Linq to Sharepoint provider which gives the ability to use Linq syntax over CAML - definitely worth a look.
In SharePoint 2007, You can use SharePoint object model either c# or VB to get what you want along with CAML queries.
Another option is using SharePoint web services. Almost all areas in sharePoint has web services exposed. You can use them and get what you needed.
In SharePoint 2010, A new world for SharePoint devs and better options in our hand. A great concept named Client Object Model. Read more about it here. http://praveenbattula.blogspot.com/search/label/Client%20Object%20Model