As I'm getting into some of the higher levels (albeit on lower difficulties), I notice that sometimes a path that is open is never followed, due to the way enemies spawned in that wave. This led me to question: are the spawns and approach routes deterministic? Knowing this would allow me to never block certain routes, because I'd know enemies would never approach that way. I'd also be able to develop a circuit of tower repairs if I knew enemies always attacked from one direction first, then the opposite - and so on.
As far as I've seen for the general case, yes, pathing seems to be generally pre-determined. The only exception that I've seen is when enemies divert to attack players.
In my experience, I've yet to see main paths not be used except when I killed every enemy intent on that path before it could take that path. The thing to note is that the pathing is calculated only to the targets available and generally tries to find the nearest targets to the point of entry. Some enemies will go a little farther if there are multiple targets in range, but I've never seen one cross the entire map to get to a target when another target was nearer. This means that paths between an entry and a target that is quite far does not need the defenses as the enemies won't go that way when there are nearer targets. The problem is that the targets themselves are not always deterministic as in the case of the Christmas level where the targets are selected at random from the pool of targets.
From what I've seen, shields and blockers are not to divert the enemy, but to draw the enemy agro towards them rather than the towers. They act more to delay the enemy, possibly exposing them to more damage, than they do as roadblocks.
I find effective strategies to employ are: