muttly13: If they launch something at you, in my experience it does nothing to their standing forces at home. Your attacks seem to do little as well. For example, if you attack year after year and find 2 Hop divisions, kill one and retreat. Go back and you will find the same there next year. Killing peasant units does zilch. You can slaughter every peasant he has and he willl still buy and sell the same trade goods, have troops, etc. In fact, I have found very little does anything to their combat/economic strength short of complete conquest. Admittedly, I have never attacked month over month to see if they instantly rebuild. On the flip side, I have never seen a city increase its defenses either. So my vote falls for static city planning.
If you can afford to bribe, I would. First, it results in all the same benefits as winning the battle. You get a victory monument, no tribute payments, etc. Second, it has the added benefit of not rebuilding your troops or losing any workers if you use peasants. And finally, no unexpected damage to repair. Accidental buildings lost, no wall repairs, blah blah. Frankly, no need for walls at all... The only thing actual combat adds is the fun of it if you like that mechanic, otherwise is bribery all the way for me. I suppose if you expect to smash the incoming force and use only professional troops, theres no economic factor short of replacing a few suits of armor. In that case I might fight if I was a bit tight on cash.
Bribery does get pricey though, especially on immortal difficulty. I forgot the exact calculation, its out there on the web if you want to look it up, but I believe it can hit 50k or so for a large, often attacked city. Which, if you are that large, isnt much of an issue but can be a problem earlier on depending on the scenario.