And don't speak of stuff you know nothing about, he should use the event I pointed out, because the other one can because it triggers before the spell is cast (guess why it's called begins casting?) so you can get the effects without spending mana and cooldown.
Event makes a clearly difference, if I can keep casting a spell without spending mana and cooldown it would destroy balance.
GetTriggerUnit is better, it's not that much faster, but if you're using it a lot it is better the other way. And GetTriggerUnit can be used after waits, GetSpellAbilityUnit can not (well, it can, but it'll return null)