Bittrex has a large volume and variety of coins with a minimum reputation (no scam coins). It is the one that most people use today, very good customer support, expensive with the rates but people responsible.
Poloniex has the margin and the lending, you can increase your profits with loans and lend in exchange for a small fee.
Bitfinex I do not use it since the supposed "hack attack". It no longer gives me confidence so I don't recomend.
There are people who also use
Cryptopia, I have not tested it but it has a great variety and nothing negative with the retreats but they have not a big volume like Bittrex.