Real sieges work by surrounding a city and cutting off its resources.
Maybe for every round your team "surrounds" a city, the city loses a bit of garrison?
You need at least three players to do it, making a triangle around the city, but more is better. For every player over three "surrounding" the city, the city should lose so many upgraded cards per round, until they're all unupped, at which point it starts losing straight cards.
So if it were 10...
A minimum siege would unupgrade an opponent's deck every turn, destroying a minimum fortified city within 4 rounds without a fight. A 6 man team could do it in 2. Pretty short, but you have to consider it's a six man operation, and if any of them are fighting, the cards remain. Plus you can invest cards in protecting your city. A full team would take six rounds to defeat a fully fortified city, if they were never disturbed, and a minimum siege would take 12 whole rounds!
I think that's a pretty balanced "siege" mechanic.
Of course, you can always go fight the city. That'd be war style. Fight to the death, a deck at a time, loser loses all the cards in their deck. Last man standing gets to salvage 6 cards from each lost deck (including their own).