I personally really like Bitstamp for purchasing bitcoins. I started out using MtGox a few months ago but have since transferred over and primarily use Bitstamp. I have yet to exchange bitcoins for fiat currency though so I do not know which exchange would be best for that.