Every class works, though mages have drawbacks in terms of trust. As for races, it's still obvious that the whole thing was originally written for a human protagonist. Elf works, but no small part of what makes it work is "romance"-gated and that really ticks me off. Dwarves and qunari were a waste of resources, in my not so humble opinion, because they have no connection to the story at all and should cause way more of a stir.
My own preferences is human warrior, sword & board champion. While I don't like humanocentrism, I dislike feeling like a game treats me as a human anyway even more, and being closely tied to the story as a devout if troubled and increasingly open-minded Andrastian is a blast. Warrior because I'm a melee gal at heart and love tanking -- being the first in and the last out, the one who draws the line in the sand, yells "You! Shall not! Pass!" and shields her friends with her own life is just unmatched in epic heroism. That aside, I also like the idea of a "mere mundane", a "pathetic sleeper" being the one to rise up against all the chaos and evil unleashed by various supernatural badguys. Frustrating enemies who thought themselves to be oh-so-superior because of their magic lends an extra air of satisfaction to kicking the crap out of them. 