Today, I was playing a duel, and my friend played a Wall of Reverence, which he then ended up enchanting with an Ethereal Armor. Between those two actions he asked me if I would counter it, to which I answered that I would wait for him to play the rest of his cards so I could choose what to do. He said that I had to counter the Wall of Reverence before he played Ethereal Armor for the counter to work. Was he right about that?
Your friend was right.
Casting spells and activating abilities puts them on the so-called Stack before they actually resolve and turn into creatures, enchantments, and so on. The Stack is a pretty important part of MtG.
You can only counter spells and abilities while they are on the stack; indeed, a spell can only be a spell on the stack, and if you read your counter spells carefully, they say exactly that: counter target spell. Therefore, if it's not on the Stack, you can't counter it, because it can't be a spell. Once a spell has resolved, it's off the Stack and it's too late to counter it.
Most spells, like creature, enchantment, or sorcery spells can only be played while the stack is empty, among other things. That means, if your friend first played a creature (the Wall of Reverence), and then an enchantment (Ethereal Armor) on that Wall, the Wall can no longer be on the Stack and must already be on the battlefield. Not to mention that this enchantment requires a target, which can in this case only be a creature that's already on the battlefield.
The only situation where you can choose which spell to counter is, obviously, when multiple spells are on the Stack. The first spell can be anything, and the other spells are typically instants.
Note that your opponent is not required to respond to a spell, even if he could (which he could not in this case) - if he so chooses, he can just let any spell resolve, then cast the next, let it resolve, and so on, until he has played everything he wanted to. Indeed, this is a common strategy against a player like you who plays counter spells, because he forces you to decide on incomplete information. If all spells were on the Stack at the same time, you would of course have a much easier time to decide which spell to counter, if any, which is why a smart player would deny you that opportunity, and he has every right to do so.
- He cast Wall of Reverence.
- He didn't want to cast anything in response, so he passed priority. ("Do you want to counter it?")
- At this point, you either had to cast a spell or pass priority. If you were to pass priority, Wall of Reverence would resolve, so it would no longer be a spell, so you would no longer be able to counter it. You have to Cancel it there and then, or lose your chance.
Ethereal Armor is not an instant, and Ethereal Armor can't enchant Wall of Reverence before the wall enters the battlefield, so he didn't even have the option of casting Ethereal Armor in response to Wall of Reverence.
You can counter an Ethereal Armor only if you don't counter Wall of Reverence. If you counter the wall, there would not be a legal target for EA. Since EA isn't an instant, your opponent cannot cast it until the stack is empty. This implies that the wall has either been countered, or you have decided to allow it to resolve. You cannot choose to wait to see what else your opponent casts.