I would not say that any of the 3 are store fronts.
All three are backend integrations into the EE control panel. Of the 3, I would say, baring in mind I have not tried BrilliantRetail (nor EE2 version of CartThrob) that BrilliantRetail and Exp:resso Store are more integrated than CartThrob. Under EE1 CartThrob is administered as a separate module.
The power of ExpressionEngine comes from its templating engine, what you put into the backend you can (almost always) extract to the frontend. I read on the BrilliantRetail website that they provide sample frontend templates that you can use.
I think what you are asking for is available in all three, but without a little more information as to your requirements I can’t answer your question in more detail.
As to why I found CartThrob (EE1) a little complex; purely down to module integration, some incomplete documentation and some strange template calls. However, when approached for support Barrett Newton were fantastic.