I think large and huge city assaults should be a blood-bath. Only worth risking when in a big hurry with a relief army getting close. Taking a city like Syracuse by assault should be a minimum 50% casualty rate imo (even if the dumb AI only leaves one unit in it).

On the other hand I think there should be far fewer cities that get to large and huge sizes so cases like that are much rarer.