Instead of digging your heels, and telling her your speech will be much more beneficial to both the students and the company, you did the typical nerdy thing and avoided confrontation and just left
I would have started by asking what position she was looking for, and if she started all the way at the top like CEO, I’d whittle it down by starting with “don’t you think encouraging your entire class to aim only for the top, that you’ll be setting lots of them up for failure?” And if she didn’t relent, follow it up with “people who are on a CEO track need to know what life is like for those who build their products.” Or ask her whether she’s running a CS or MBA program for a cheeky jab.
You’ll never know if you don’t ask, and there are no stupid questions.
Its easy to come up with that after having thought it over for 30 seconds but on the spot, when what the person just told you comes as a shock, you're unlikely to muster up such a response.
Oh I have plenty of that too. But it's usually the case that saying _anything_ reasonable is enough of a foot in the door to a wider conversation. And it's a lot like creativity, or math, or music... the more you do it, the better you get at it.
It's like when you learn a new language, one of the first things you learn is how to say "I don't speak X well, please slow down" in that language. Same with debate: learn how to say "I'm trying to better understand" to prime the other person for a conversation. Sometimes they'll start talking for you–that's even a common negotiation tactic, to let the other person talk to basically give you a few points to think about questioning/rebutting, or look for contradictions.
That assumes plenty of time to think about what happened and formulate the best response. That's rarely possible in the roughly 1200 milliseconds available for a timely reply to a perceived insult.
I think I'd only be able to do that if I'd had the same conversation previously. Come to think of it, sounds like just about every tech interview I've ever had.