I have done EXTENSIVE research into different carts and have found
Ultracart to be the big winner for a number of reasons listed below so I decided to share it with all, because all the gurus push
1ShoppingCart as they have affiliate deals with them, but in comparison it sucks!!
Ultracart beats
1ShoppingCart on so many levels it's crazy. Here are the major reasons why Ultracart is better (and no i am not affiliated with them or anything i just think they have an amazing product)

Scripts and embed tags on the checkout page!!!!! you can add video, or popups, or countdowntimers, or audio testemonials, or anything else you want to your checkout page! IF you dont realize how huge this is you need to read more!

No easy cancel! they have a feature named this which specificaly allows you to turn off all emails to recurring customers and make them call you to cancel their subscription.
This is huge because 1ShoppingCart sends every reccuring customer an email every month telling them how much you charge and how to cancel and you can't control it or even modify the copy!
We can argue ethics all we want but recurring works best when people forget about it and let it run for months on end, 1ShoppingCart effectively kills that! (this was the prime reason i wanted to leave 1ShoppingCart)
[Also their recurring billing system is an order of magnitude more flexible than 1ShoppingCart]

Full customization of the checkout process in 2 different ways:
A. design your own forms and just pass the data to Ultracart to verify!! TOTAL Flexibility
B. pay Ultracarts in house dev team $75/hour and they will customize the forms in your account for you! (this is what im doing, i like to have somebody i cna call and complain to if my tech stuff doesnt work and i dont have a full time web guy yet)

You can host the secure page on your own domain! this doesnt sound like a huge deal but it is. Through ultracart you can buy an SSL certificate, then when people check out with you they dont get sent to mcssl.com or ultracart.com or watever like with 1ShoppingCart, instead they stay on your site and simply checkout at secure.yoursite.com, now that may not sound big but i just think its an awesome thing for customers to never have to leave your environment!

Built in upselling system after the initial sale. Basically you set up your upsell items and the items that trigger them (so if somebody buys your dog book you can offer them dog soap)
then you can set up different paths to test (HUGE DEAL!) so u can offer htem upsell 1, 2 then 3 or split test it against offering 3, 1 then 2.
Easy useage for this "Priority order handling" give them the opportunity to pay you $4.95 to rush to fulfill their order before everybody elses = free money! but does it work better before or after youve asked them to buy the other upsells?!
The best part is this all happens AFTER they put their credit card info in and their order is set on a timer so even if they close the browser it goes through for the initial product and any upsells they choose after 45 min.
This feature alone is gonna save you countless hours manualy entering in upsell orders if you had to do it via a script!
There are a litany of other features but these are the big 5 that really got me to switch!Oh yeah, and its cheaper!