I don’t think that both sides in battles need to have the same magical powers but I agree with the assumption that a certain amount of balance is necessary to make the story interesting.
I think it's okay if the good guys are outmatched, but not if that's going to be resolved at the push of a button. The resolution has to go through enough of a process to give the conflict legitimacy.
One thing certainly applies though: If a magic user is able to form perfect shields against swords, arrows and everything else his enemies are using against him, seeing him in battle isn’t interesting. Such characters actually do require opponents who can counter this and harm them despite of it.
I feel tempted to create such a character just so I can have a lowly peasant tear him down for you.