I started doing research: talking with folks I knew in the industry, reading online forums, and looking at job posting to put together a number right in the middle of what the industry was paying for my promoted role. I took that information to my boss at my next one-on-one and proceeded to walk him through what I was looking for in salary when they finally promoted me and why I thought those numbers were fair.
He was clearly stunned by the conversation and didn't even take a second to process what I'd said. Instead he told me, "You started at this company underpaid and you will always be underpaid as long as you work here. The promotion is not going to be negotiable and it's more like a 5% increase." I pointed out that the role should be paid at what the role is worth and not be based on my current salary. He shrugged his shoulders and basically said, "That's the way that it is and I'm not going to fight to get you any more."
That was the moment I knew it was time to leave. It was suddenly clear that they knew they were taking advantage of me. They knew I was ignorant of what the industry was paying and used that leverage to severely underpay me while hiring other folks at 40-60% more than me. And even when I proved to be one of the strongest assets on their team, the only response was a shrug of the shoulders and a "that's the way that it is."
How megacorps work has some complicated and convoluted reasoning behind it that will only make sense if you start thinking at scale.
As an employee, however, you operate within that given environment, with little opportunity to change that. As an individual, I believe the most rational stance is to recognize that:
1. Megacorp has no loyalty to you, and you shouldn't have any to it either.
2. You, however, need to have a strong loyalty to the individuals you work with, i.e. your team. They are your future network. You want to be remembered as a good team member by your teammates.
#2 and #1 often conflict. When it does, I choose to let #2 take precedence.
So, in your story, the fact that you were "surprised" that you were underpaid indicates you did not keep updated how much you are worth in the market. That indicates a violation of rule #1 that I follow.
Then, when you found out about that from the grapevine, your assume your manager, or his manager, has the ability to remedy that situation. 99% of the time that is not the case. The only time your manager(s) can do anything is if/when you show up with a 2-week-notice with another offer in hand. Even that gambit is risky. If your manager decides to fight for better salary - he has to burn a significant amount of political capital.
The most rational choice in this case is to take another offer, give your two week notice and and politely mention that you got a better opportunity while giving the notice, and make preparations to leave. If they do want to keep you, they might try to give a counter - but I am usually *very* uncomfortable taking those (I've been there, and declined it) for many reasons. THEN, some time later, a year or two, if your older job wants to bring you back with appropriate raises and stuff - you can move back. DW had this almost happen last year when her old employer gave her an offer without any interview when they heard she was looking. This worked massively to her advantage since she could negotiate hardball (with extreme politeness) with the new job where she actually landed. She got a 50%+ raise this way from a single job hop.
I write this not with an intention to criticize you, but with the hope that more people can start acting rationally in these situations. Very few do. It is hard - as I can see when I try to advise DW to act opposite to what her instinctive reactions are in a given situation.