I've found its very important to keep a good garrison and a small offensive group (like 3 units maximum) on the border of Civ B if you're at war with Civ A in case of surprises. I've also found that keeping a smaller secondary group that is completely removed from the main offensive group (again, no more than 3-4 units, no catapults, just a good mix of rocks, paper, and scissors) to go foraging through the enemy's territory to distract his defenders from your main attack.
This may sound luxurious, but if you know a war is coming, its not hard to get this together. Also, this is purely AI fighting. For multiplayer, it would depend on too many other things, and chances are, if you're opponent is as good as you, he'll likely be able to hit you in at least one place where you're not ready (trick is to do it before he's ready to!)