And it looks like what happens during battle is that the spells build upon each other. So that combined I get a protection of 24 as if one character had used those experience points to cast one spell. Is this how it was intended?

If a minion casts a spell of Protection at level 20... and another minion casts another one at level 5... shouldn't the weaker spell have NO EFFECT in "reality?" Why would it "build" by layering it's level on top of the previous spell?

Effect = .8*Level
Since this relationship is linear, stacking by level or effect means exactly the same thing.
So yes they would dispel at 1mil.
^Same for EC

Sort of like Protection
Antimagic Field stacks by levels, which is important to note in comparing it to the level of DD. For example an AMF that would have an effect of .10 on some level fireball, and another AMF of the exact same level is used then the effect is not simply .20.

Note that there is still no disadvantage in training multiple AMFs except that one can not use the same Corn to boost both of them.

But does a higher DM dispel a lower DM? Isn't that the advantage of trainging a spell on one minion? As it says in the wiki, ie;
1 minion trains protection to (oh lets say) 25
an opposing minion has a DM that can reduce it to 5, in other words taking out 20 protection. you still have at least the 5.

4 minions train protection to a total of 25. (5 / 5 / 5 / 10)
the same opposing minion who was able to kill the previous 20 protection knocks out EACH of the 4 minions protection (because they're all under 20) leaving you with nothing. For that matter, in the above senario, if a DM could knock out even just a 10 protection, then they're all gone.
So back to DM vs DM. Is it the same. would a single level 20,000 DM knock out all of a variety of less that 20k DM?