Verstappen started from pole and controlled the grand prix early, opening a crucial seven-second gap on second-place start Norris by the end of the first stint.
Norris and McLaren appeared resigned to lacking the pace to match the Dutchman, but the race came alive in the final 10 laps, when Verstappen’s hard tyres began to degrade and lose temperature.
Suddenly the pursuing McLaren was on the attack, sometimes taking as much as a second a lap out of the lead.
On lap 57 of 63 Norris closed to within two seconds, but gains were becoming more difficult as he chewed through his own tyres.
It took until the penultimate lap for him to latch onto the back of the Red Bull Racing machine ahead, but a small snap exiting the Villeneuve chicane ‒ a clear sign of just how hard the Briton was pursuing a second consecutive victory ‒ cost him crucial momentum.
It left Norris without DRS on the final lap, which was just enough breathing space for Verstappen to grind out a 0.725-second victory.
“The whole race I had to push flat out to try and make a gap initially,” he said.
“I think on the medium tyres we were quite strong; on the hard tyres it was just a bit more difficult to manage.
“The last 10 to 15 laps I had no grip anymore, I was really sliding a lot.
“I couldn’t afford to make too many mistakes. Luckily we didn’t, and I’m super happy to win here today.”
Norris put his narrow defeat down to a slow opening stint but was pleased to show at a second consecutive race that McLaren has the pace to challenge Red Bull Racing.
“It hurts me to say, but one or two more laps and I think I would have had him,” he said. It’s tough… a shame.
“He was much better in the first stint, and obviously in the second stint we were stronger.
“One or two more laps would have been beautiful, but just not today.
“I think right now we can happily say we’re in the position of Ferrari and Red Bull … after last weekend and the improvements we’ve made, it’s what we should have started to expect.”
Charles Leclerc completed the podium in a slightly underwhelming result for Ferrari after much hype over its own sizable upgrade package in Imola, but the Monegasque said the seven-second margin to Norris ahead was a decent return and buoying for future races.
“At least it’s a podium,” he said. “All in all I think the race pace today was quite strong.
“It’s looking good for the rest of the season. It’s incredible to be on the podium with all the tifosi here in Imola.”
Oscar Piastri had been set to start second in Norris’s place after an excellent qualifying result, but the Australian was demoted three places on the grid for impeding Kevin Magnussen in what the team admitted was its own mistake.
Piastri was similarly rapid in the race, but around the difficult-to-overtake circuit, it was all he could do to improve to fourth, passing Carlos Sainz in pit lane with a better strategy.
Lewis Hamilton finished sixth ahead of Mercedes teammate George Russell, who had been ahead in the final laps of the race but who was forced to make a late pit stop to guard against tyre wear. The late change dropped him to seventh but enabled him to score a bonus point for fastest lap of the race.
Sergio Pérez recovered from 11th to eighth in the second Red Bull Racing car, the Mexican lacking the pace of his race-winning teammate all weekend.
Lance Stroll made similar gains from 13th on the grid to finish ninth and rescue two points on a difficult day for Aston Martin.
Yuki Tsunoda scored the final point of the race for 10th, the culmination of an excellent weekend by the Japanese RB driver.
Nico Hülkenberg finished ahead of Kevin Magnussen, Daniel Ricciardo, Esteban Ocon, Zhou Guanyu, Pierre Gasly, Logan Sargant and Valtteri Bottas down to 18th.
Fernando Alonso was an uncharacteristically scrappy 19th after starting from pit lane following a qualifying crash that effectively counted him out of the entire race for his worst result since the 2022 Mexico City Grand Prix.
Thai driver Alex Albon was the only retirement, his Williams team recalling the car following a botched pit stop that had him rejoin the race with a loose wheel, for which he was penalised 10 seconds.