They are all good carts. Which one you choose would really depend on your requirements and your personal preferences. Maybe if you post what features you require from your cart software we can help you narrow it down a bit.
1) Xcart ( not free but worth for the money)
2) Cubecart ( not bad for the users, but if you are going to write modules for it, its not structured)
3) ZenCart ( good code structure but less features then cubecart)