Coinbase actually aren't like a normal exchange in that they don't have different prices for buying and selling. They seem to cover the difference themselves somehow, and they have very high fees (1.49% as they show
here).
I would say that Coinbase has different price for bying and selling. May be I do not understand you correctly, but this is in Coinbase how they get some profit.
Bitstamp's fees get progressively less the more you trade and are detailed
here.
Coinbase's website and their services have been experiencing some downtime recently, so personally I would feel better on Bitstamp.
If you want to pay with credit card I would suggest Coinbase, it`s instantly quick. Bitstamp credit card payment takes longer (you need to register at provider of payment processor) and there is high fee.
In opposite Bitstamp is better for trading when you have money there.