I've taken on and finshed off hordes all you need is one good army(and you as it's commander) and the willigness to chase 'em around a while.
I've managed to take out the huns as the saxons in just such a way and almost wiped out the franks (the romans beat me to it)
But indeed the city size does not seem to realy matter and i think that at least the prevention of hordes should happen when you siege a city into submission or when you exterminate it.