Spies remove all city defence bonuses, but the units inside get any defences from terrain and unit abilities.
I use a couple spies to speed up the process of invasion. You don't need to seige a city if you can use spies to negate their defence bonus. Still need some cattys to weaken the troops though, just not bombard.