Can you think of a great hero who is made greater because of a villain who counters them perfectly?
Batman is at his most iconic when he’s facing the Joker. When Loki gets out of line, it’s Thor who has to be at the top of his game. And Harry Potter might have lived a relatively normal life without Voldemort causing trouble.
Sherlock Holmes has Moriarty. Ripley has an infestation of aliens. Luke Skywalker versus Darth Vader. Ariel versus Ursula.
However you choose to define a hero, you can often find an antagonist who has the exact set of qualities needed to make the hero who they are.
So does every story need a villain?