I've read a lot of articles and forums debate this issue, and almost everyone of them have the facts wrong or are extremely biased to one or the other. Being a long term player of both games (Guild Wars 2 years+, WoW 9 months), I've been dying to state my own opinion on which one is better. I should point out that both games are awesome in their own right and I sincerely enjoyed (still do) playing both.
Graphics and Sound
World of Warcraft (WoW) has very cartoony graphics, where as Guild Wars goes for a more realistic approach. Both games have spectacular artwork, but Guild Wars definitely wins out as far as looks go.
The sound quality (music and effects) on both games is fantastic.
WoW's persistent world makes for a more RP experience (except when bad guys re-materialise after dying, in front of your very eyes). Guild Wars uses an instanced game play experience, which means that once you leave town the world belongs to you and your party members. This can be good, as bosses will always be alive when you get them and when you kill something, it stays dead (at least until you zone).
WoW has races, Guild Wars only has humans. Guild Wars has more classes though (if you include all expansions).
WoW has factions (Horde or Alliance), Guild Wars has something similar with the 'Factions' campaign expansion (Kurzick or Luxan), but it doesn't feel the same.
WoW has professions (i.e Alchemy, Mining, Blacksmithing etc), which gives you something other than endless killing to devote your time to when leveling your char. Guild Wars has something similar with 'titles', but its not quiet the same.
Character creation in both games allows for unique looking chars, but I felt as though Guild Wars did a better job of it than WoW.
Guild Wars allows you to multi-class your characters, WoW does not.
In WoW you have a larger range of movement with your character. You can jump, fly and swim your way across a variety of environments. In Guild Wars you cannot jump or swim and you are often restricted by invisible barriers.
An annoying feature of Guild Wars is that in order to complete the PvE aspects of the game, you must join a party of 4 – 8 players. You can enlist NPC henchmen, but they can be annoying and useless at times. So before leaving town you must build up a party of other players. This means that you must rely entirely on 7 other players to do their part or else you all die. Good if you get good players, annoying if you don't. The majority of the game in WoW can be soloed, which removes this problem. Guild Wars kind of solved the problem with in the introduction of Heroes (player controlled henchman) with the Nightfall Campaign, but not entirely.
Playing on a PvP WoW server really made the PvE suck. I'd be mid way through a quest with my level 25 Horde character and then suddenly a level 70 Alliance player would pop up and gank (unfairly kill) me. Due to the level difference, there was nothing I could do to stop it. It was even worse when they camped my corpse, which meant the second I came back to life, they would kill me again. My friends all told me to switch to a PvE server, but I enjoy PvP, I just prefer it when it fair. The upside is that I guess it makes the game more RP and when you reach a high level, you can go back and kill all the other low level noobs of the opposing faction. If you find that fun...
Time spent running places in WoW almost accounted for 40% of my total game play. Naturally the game provides easier modes of transportation than running, but it still gets to you after a while. Guild Wars solved the problem with a 'mapping' feature. You can open your map and double click a town and you are instantly transported there, which means you save a huge amount of game play time in transportation. The question is, which one is more RP?
Changing your character skills and build spec in WoW costs in game money, whereas its free to do as many times as you like in Guild Wars.
Both games have an enormous amount of end game things to do, so I don't think either game wins here.
Selling and buying items in Guild Wars is a nightmare. You have to advertise in the trade channel of each town and hope that someone private messages you. WoW has an 'Auction House' which makes it a hell of a lot easier to sell your items as well as buy exactly what you are looking for.
One of the biggest things that turned me off WoW is that the guy who had the best weapon and armour always dominated the battleground. So essentially the game encourages you to grind your life away to get these elite items just so that you can be the best at PvP. Guild Wars has max levels for all armour and weapons, which means the game is more skill based than item based. The rarest items in Guild Wars have the same stats as other easier to obtain max items, they just look better.
Class blancing in WoW for PvP is terrible. Often its the case that it doesn't matter how skilled you are as a player there is always another class that has a significant advantage over you. For example, a Rogue will always have an advantage over a Mage, and a Wariror over a Rogue. I know players that will swear black and blue that this isn't true, but sadly it is. The ability to multi-class in Guild Wars removes this problem, meaning that no one particular class has an advantage over any other class.
All the best PvP battlegrounds in WoW cannot be accessed until you reach the higher levels with your character. In the case of Arenas, you have to reach level 70. Personally I think this absolutely sucked. Every single aspect of PvP can be accessed right from the get go with Guild Wars. This is achieved with PvP only characters. PvE characters can participate in PvP as well, they just need to be level 20 (aside from Ascalon Arena).
WoW provides PvP statisitics and Guild Wars doesn't. When playing WoW I loved being able to look at how many kills I had made and damage delt during the course of battleground. It also helped to identify which players were pulling their weight and which players weren't.
WoW has bigger battles. Some of the battlegrounds in WoW allow for 40 v 40 players to compete against one another. The max size in Guild Wars is 12 v 12 (Alliance Battles).
When you start a character in WoW, you must pick a server to play on. If later on you meet a friend that is on a different server, WoW charges you $20 US to change server. Guild Wars is free to change server. Which means you can always play with your friends no matter where they are in the world.
Guild Wars is free to play but has a slightly higher upfront cost than WoW. WoW charges around $15 US a month to play.
I think WoW has a lot better role playing elements to the game, as well as a lot more depth as far as the PvE goes, however the PvP system in WoW doesn't even compare with Guild Wars. Both games have the same repetitive questing and killing, except that it takes longer to level in WoW compared to Guild Wars. So if you enjoy PvE and can get over the incessant grinding to gain levels (I couldn't), WoW is the game for you. If you prefer PvP with some challenging PvE on the side (like me), then I recommend Guild Wars.