With siege, shoot out the walls supporting units to kill some and then take out the towers.
Otherwise, make pure rams as your guys get huge penalty for going up siege towers and ladders. Instead, use hordes of cheap infantry like spear militia. Antiblob penalties isn't a big deal. Zerg flooding still works fine. Pour through the gates and rush for the square with all your units. Then set up your blob in the street leading to the square. Defending troops will try to fight their way back and be routed and picked off. Don't let them get to the square or they will fight to the death. This tactic can easily get 3:2 kill ratios in your favor. Spear militis are also easy to replace.
Bookmarks