It depends on who is attacking your city, but generally supports are the best. If they are stationary then they will have a ranged attack with 3 shots and some pretty substantial magic/elemental damage (+range bonus for being at a wall). If your opponent is stupid or a computer, then draconian flamers will murder them when they cluster up at the gates.
If you are being attacked by wall climbers and flyers it is less straightforward. I typically have a couple polearm units to engage the flyers… or if I play warlord, Lions Courage + Last Stand can turn any meager unit into an anti-air machine.