Personally I only ever assault a city if time is against me: if, for whatever reason, a quick attack is (in roleplay terms) more expedient than besieging the town till they sally or surrender. For an open battlefield, I usually attack if I can, though when I'm playing Hayasdan I usually hold a position and wait to be attacked. As for ambushing, I prefer factions that utilise light infantry so I do like to ambush if I can (though usually it doesn't work).

I think that in RTW, defense is easier then attack because the enemy moves toward you which gives them more time for their formation to loose all sense of cohesion. I can't remember if this is actually the case, but it seems to make sense.

Foot