The 54-year-old will serve a third consecutive term in office, with his party Fidesz projected to keep its key two-thirds majority in parliament.
Fidesz won almost half of the vote, with 93% of ballots counted, Hungary's National Election Office said.
Mr Orban is a strong Eurosceptic who campaigned on an anti-immigration platform.
In a speech to supporters on Sunday night, Mr Orban said his victory gave Hungarians "the opportunity to defend themselves and to defend Hungary".
Leaders of the second and third-placed parties have resigned in light of the result.
How did the result play out?
Polling stations were meant to close at 19:00 (17:00 GMT), but some stayed open hours later due to long queues. Voter turnout reached a near-record 69% - an outcome some believed would favour the prime minister's opponents.
But with almost all votes counted, the nationalist Jobbik party is in second place with 20% of the vote. The Socialists are in third with 12%, and the LMP, Hungary's main Green Party, is in fourth with 7%.
Jobbik's chairman Gabor Vona stood down on Sunday night, telling a news conference: "Jobbik's goal, to win the elections and force a change in government, was not achieved. Fidesz won. It won again."
Socialist Party President Gyula Molnar was similarly downcast as he resigned, saying: "We regard ourselves as responsible for what happened [and] we have acknowledged the decision of voters."
More about: Hungary