If you have never had a merchant account, and are based in the US, start with your bank. You should have had a business account with them for over a year, and your rates will be higher through your bank than you can get on your own. But it's a starting point. Once you have had a merchant account for over a year you can shop around for better deals.
Merchant accounts are like credit cards. Getting the first one is difficult. Once you have "merchant credit" getting another is easy.
I've used 2checkout.com which I didn't like very much because they kept 5-10% of your funds in case of refund. I've also used regnow.com which is for software, not the greatest either for multiple reasons.
I agree with Gary E, go with the banks as your relationship with them will go farther then with a nameless merchant.