Braintree (and to some extent, other lesser payment gateways)
Pros
You're in complete control of the billing system
You can do more complex payment setups
Widely supported for multiple programming languages; ActiveMerchant support
Some of the best support you'll ever see for e-commerce
Cons
You probably have to deal with PCI DSS security compliance
Potentially a lot of extra work (which may very well still be worth it)
Google Checkout
Transaction Fee: 2.9% + $0.30
Pros
Very low transaction processing fees
Fantastic if you're already using Google for advertising
Google handles a lot of the messy stuff involved in billing, like chargebacks
There's now support for subscriptions (in beta though)
Cons
Google's API is different enough from other systems that you usually have to use a library specifically designed for Checkout (e.g., no ActiveMerchant support)
Paypal
Transaction Fee: 2.9% + $0.30
Pros
Widely understood API; tons of stuff available for dealing with it
Essentially supported by everything
Cons
Lots of people are very vocal about not wanting to do business through PayPal due to bad experiences
Neutral
Tends to be popular with the young adult demographic who don't have credit cards and with eBay users
Amazon FPS
Transaction Fee: 2.9% + $0.30, lower for bank accounts and balance transfers
Pros
Probably your best bet for micro-transactions
A good choice for payments for physical goods
Cons
I don't know enough about the system to say for sure