I thought I’d weigh in on this conversation with my thoughts/feedback.
Both platforms have pro’s and cons - having used CarthThrob on EE1, it’s very extensible and the use of channels for products means that it’s easy to add additional fields/content with minimal fuss. However, clients in the past have been confused between which areas are content and which areas are commerce, resulting in me having to spend more time educating the clients.
That said, I haven’t had the opportunity to use CartThrob on EE2 as of yet, but if EE1 was anything to go by, it’ll be a great piece of software and will work as expected.
BrilliantRetail on the other hand is a newcomer to the market - having not been around in EE1, it’s decided to stay away from the channel route and employ a stand-alone solution for storing product data. Contrary to popular belief however, this *does not* restrict it’s use, since for any product you create, there are limitless options and attributes that you can assign to the product to create the same level of extensibility as CartThrob. Generally, I would argue that keeping content away from commerce is definitely a good thing - most content producers will not be interested in the commerce and vice versa.
The next issue it relationships with channels. Given the fact that CartThrob uses native channels, it’s relatively easy to integrate between other channels - however, BrilliantRetail also provides the BR FieldType - a playa style fieldtype which allows you to associate channel entries with one (or more) products in an easy to use interface.
Aside from the way the data is structured, both systems offer reporting - feedback from other CartThrob users tell me thats one of the areas that it’s let down at the moment, but I’m pretty sure they’re already on the case. Brilliant Retail comes with a starter selection of reports and analytical data with more coming on a regular basis.
The UI’s are different - CartThrob chooses the default channel/tab approach to products whereas BrilliantRetail is self contained in it’s own series of modules views. Personal preference means that I and my clients can differentiate between adding *content* versus adding *products*.
As of writing this, CartThrob is still in BETA, whereas BrilliantRetail is currently at stable version 1.0.2.5 - not particularly sure how this makes a difference, only you can make your own mind up with that.
I’ve tried to make this post as neutral as possible - which is extremely difficult given that we, at Hippo, work with the guys at Brilliant2 on the core development of BrilliantRetail (http://www.madebyhippo.com/herdspeak/view/ecommerce_has_a_brilliant_future), so I apologise in advance.
If I ever get the time, I would purchase a license of CartThrob and try to do a proper comparison matrix - time just doesn’t allow for this at the moment, but if anyone is prepared to do one, I’ll certainly help them compile a functional list of BrilliantRetail features.