So, I have for the last two or three months been trying to up my PvP game.
I find in general WoW is pretty poor for PvP, because the user-interface is lacking. It is hard to know what's going on. Combat is basically a case of doing the right thing as much as you can, without really knowing how much effect it's having or if you're winning, until you've either won or died.
These I think are the key factors;
1. Slow other players down - reduce their movement speed. This tends to let you hit them, while they can't hit you, because you can race around them and through them (or stay away from them - depends on your class, what you want to do) which stops them from facing you to hit you, or keeps them away from you so they can't hit you.
2. Key binds for everything you're going to use, and since there are not so many keys which can be reached while you're also usin w/a/s/d to move, that means careful selection of what spells/effects you bind. You cannot ever click with the mouse during combat - you need the mouse for movement control.
3. Correct talent selection. Choices for PvP are utterly different to choices for PvE, and all tend to focus on reducing enemy movement speed.
4. Be an engineer. All the other professions you can have do things for you - someone else can make your kit, enchant it, etc - but the engineering gadgets you can only use if you're an engineer, and they can have a profound influence in PvP (Battle Chicken, Net-O-Matic, etc).
5. Potions. Lots of potions. In particular, the Free Action Potion. You should expect to use one of these per fight. They change everything. If you're say a warrior and you meet a mage or rogue, and you've taken a FAP, you win, and the corpse of that rogue or mage looks VERY surprised.
That's iit to start with...