I've had little trouble so far myself, although I'm still on the first mission, though fairly deep, and I haven't even needed to use defensive spells on them. Bwarner's last tip about ranged units being fast is very good, proper use of the wait command is very effective.
Splitting your Sentinels/Praetorians is very helpful as well, especially once you have 80 or more. You can easily keep a pair of relatively small stacks near your range units to split damage, and get those free attacks in if the ranged do still get hit. I've been using two stacks of Praetorians pretty much the whole time, being aggressive with both, and so far have had pretty great success in meeting enemies in the middle and cutting them off.
Flawless Assault is really good as well, in a proactive sense. Those archers hurt when they hit for full damage back-to-back turns. Rush is also a good proactive "defensive" measure, as you can rapidly get your Praetorians engaged with the enemy units, allowing your range units time to dump damage without fear of being prioritized.