I wonder why the city guard is so ridiculously weak? :) They have 75 lvl on Lordaeron and they are not even Elites. I'm not sure I understand the logic behind this, but It is very annoying to leveling and every time I come to the capital there is a dead flight master, trainers, auctions, bankers etc. Dead bodies everywhere, but not really a battle anywhere.
Attacking the other faction's city is perfectly fine, but it's meant to be a challenge. It's ridiculous and sad at the same time that two rogues would take out almost an entire city. We're talking about capitals here, they're supposed to be heavily fortified and challenging to attack. If someone wants to attack major cities, it should be perfectly normal to assemble a group of at least 20 people to be able to do that, not three players getting bored and wiping out an entire city.
As for players as such, yes of course players are another defensive element of cities, but they're not online all the time and again, it's another element that the attacking group has to consider when to attack (how to attack, where to attack, just plan ahead).
My suggestion is not to make the capitals OP and indestructible, but to increase the balance. The way it's set up now, it's more annoying and frustrating than fun, and I think games are supposed to be all about fun not frustration. I think it would be much more interesting and fun to have one big epic battle that the other side is seriously planning, rather than giving space to individual toxic players who just want to ruin the other's game.

