can't you just save a, say, 400 AOE around the point where you casted the spell, then pick every unit in the AOE, then create a caster unit near each one of them and order it to cast the spell?
Edit : Here ya go, this worked good for me, and it looks better than meepo's earthbind since it looks like the caster is throwing a bunch of nets at the same time. Now, ofcourse this leaks - to make it leakless you just delete the Loc and Group variables at the end of the trigger with custom scripts and we'll live happily ever after.
-
Events
-

Unit - A unit Starts the effect of an ability
-
Conditions
-

(Ability being cast) Equal to Mass esnare
-
Actions
-

Set Loc[1] = (Target point of ability being cast)
-

Set Group = (Units within 400.00 of Loc[1])
-

Unit Group - Pick every unit in Group and do (Actions)
-


Loop - Actions
-



Set Loc[1] = (Position of (Picked unit))
-



Unit - Create 1 Esnarer for (Owner of (Casting unit)) at Loc[1] facing Default building facing degrees
-



Set Loc[2] = (Position of (Casting unit))
-



Unit - Move (Last created unit) instantly to Loc[2]
-



Unit - Order (Last created unit) to Orc Raider - Ensnare (Picked unit)
-



Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
The base spell i used was Devour Magic (the first one that came to mind, you can use practically any AOE spell, like Flame Strike, Silence...), for a casting unit i used a wisp, hence the idle workers. Make sure that the esnare ability you give to your caster units has a bigger range than the original spell to make sure that the esnares will be cast.
And one more thing, the esnare spell has a tech tree requirement, dont forget to delete it or your casters wont cast the spell