-Mages
Pros:
-AoE lords
-Best CC with sheep
-Great dps in PvE
-Lots of instant casts
-Lots of fun in pvp
-Easy to have fun with
Cons:
-Very squishy
-Drinking a lot
-Being a water vendor
In general mages are squishy, but can deal a lot of damage. They have loads of spells to keep their enemies at bay, especially as frost, but when they get to you, you're fuoked. Most guilds raid with at least 4-5 mages, and they're great PvE dps as well as a vital part of any pvp premade.
-Warlocks
Pros:
-Dots
-Pet
-Fear
-Not super squishy
-Decent PvE dps
-Amazing in PvP if you got the skills
Cons:
-Lifetapping a lot
-Farming soul shards which are required to summon / soulstone / shadowburn people
-Difficult to really master
-WATCH YOUR AGGRO MATE
In summary, warlocks are an odd class. They have tons of options for pvp, and two different specs for PvE. Warlocks do decent raid dps, but are not very popular, since most mages, rogues and warriors will outdps them. Their aggro is super wonky, and usually if you crit at the start of a fight you're going to overaggro. I'd say that pvp-wise warlocks are great, but very difficult to really be good at. They have tons of situational spells, combined with pet management and consumable usage they're difficult to get right. However, once you do get it right you can absolutely rek in pvp.
tl;dr If you want a more straight forward dps class mages is the way to go, if you want something more complicated pick a warlock. In PvE it doesn't matter much, mages spam frostbolt, warlock shadowbolt.