This one works best with Roman or Greek cities against armies with a lot of low level troops such as a horde army.

Abandon the walls except for one unit that stays a good long way away from where any of the enemy units are coming in. Put everything else blocking the streets that lead onto the town square, or on the town square itself.

The enemy easily gets over the walls and then march everything towards the square. Once all their units are inside including their general(s) send the one unit on the walls round and recapture any gates/towers the enemy took. You now have the entire army trapped in your city to be brutally massacred in the streets.