The Red Bull driver, who was in second place for most of the race, was in the lead with just a few laps to go and never gave up.
The win was Verstappen’s first of the 2022 season as he did not finish in Bahrain last week.
Ferrari took the rest of the podium, with Leclerc in second and Carlos Sainz in third.
Verstappen, 24, called it “a really tough race, but a good race”.
“We both fought hard on the front lines. We were just trying to play long,” Verstappen said.
“They were very fast in the corners and we were very fast in the straight. The tires wore out fairly quickly. You could see that towards the end we had a bit more speed.
“I tried to get away, it was not easy, in the last corner they played tricks well, but in the end I managed to get ahead. Even after that, he was constantly in the DRS.
“I’m very happy that we’ve finally started the season.”
Back and forth
After earning his country’s first pole position, Sergio Pérez got off to a great start on Sunday. The Mexican quickly moved off the line, blocking second-placed Leclerc while also maintaining his lead.
However, the race of his dreams soon began to crumble.
Ferrari’s apparent fake pit lane meant that Red Bull chose Perez’s pit lane, losing seats, just moments before Nicholas Latifi crashed, causing the safety car to run out, allowing other drivers to enter the pit lane.
This meant that when the safety car left the track, Leclerc was in the lead followed by Verstappen and Pérez was in fourth, giving up his third place due to a pit lane violation.
And with no obstacles ahead, the Monegasque driver continued his superb pace into 2022 by winning the first race of the season in Bahrain over the weekend.
The 24-year-old managed to contain the flying Verstappen until a virtual safety car was called on lap 38 after two cars lost control near the pit lane.
After the race’s second safety car was stopped, as in Bahrain last week, the two young stars were back in action.
They walked back and forth, Verstappen sticking his nose forward, but Leclerc roared back.
But with three laps to go, the Dutch driver took the lead again and held on like a vise to take his first win of the season.
Both Verstappen and Leclerc were already paying their respects to each other and could be seen embracing after an exciting race.
And despite Leclerc’s disappointing finish in Jeddah, he said “every race should be like this.”
“Today it was not enough. I really enjoyed this race, it was hard but fair! Every race should be like this. It was fun, I wanted to win today,” he said.
“We had two very different configurations with the Red Bulls. We were pretty fast in the corners but slow on the straights. It was extremely difficult for me to get around Max on a straight line. Max did a great job, it was a fun race. “
Away from the track
On Saturday, a joint statement from Formula 1 and the FIA sports governing body confirmed that the Saudi Arabian Grand Prix will take place this weekend despite an attack by Yemeni Houthi rebels on an oil storage facility near the circuit on Friday.
The Saudi Arabian Grand Prix is the second race of the new season, timed to coincide with the seventh anniversary of the start of the civil war in Yemen.
Friday’s explosion at the facility of F1 sponsor Aramco occurred about 20 miles (32 km) from the track, and smoke swirled over the city during Friday’s practice.
The second training session was delayed by 15 minutes as the teams and drivers were called to meet with the organizers. Mercedes team principal Toto Wolff told reporters that the teams were “confident that we are protected” and the track was “probably the safest place in Saudi Arabia” at the moment.
However, sources told CNN that the riders felt uncomfortable after the attack and many did not want to race.
The Houthis said they used “large numbers” of drones to target the site during Friday’s attack.
The Saudi-led coalition fighting the Houthis in Yemen said one ballistic missile and 10 bomb-laden drones launched from the southern border by Iranian-backed rebels were intercepted, Saudi state television al-Ekhbariya reported. The statement did not mention the attack on Jeddah.
So far, no one has been injured in the attack, according to a CNN spokesperson.
Saudi state media later reported that a Saudi-led Arab coalition launched airstrikes against “threat sources in Sana’a and Hodeida” in Yemen following Friday’s attack.
The port city of Hodeidah is used to deliver food and humanitarian aid to Yemenis. Fuel usually enters the north of the country through a port controlled by the Houthis, but the Yemeni government, backed by Saudi warships, must give the ships permission to dock.
Irene Nasser in Hong Kong, Thalia Kayali and Hira Humayun in Atlanta, Nick Robertson, Eyad Kurdi, Amanda Davis and Mostafa Salem contributed to this report.