The 24-year-old AlphaTauri driver beat McLaren’s Carlos Sainz and Racing Point’s Lance Stroll to the flag after inheriting the lead from poleman Lewis Hamilton, who served a stop-go penalty for a tyre change while pit lane was closed.
But Hamilton wasn’t the only frontrunner to hit trouble, with a slew of problems creating a perfect storm to deliver the unpredictable podium.
Mercedes teammate Valtteri Bottas failed to make any ground on his championship deficit, clawing back only a single point from fifth place after a shocking start dropped him from second to sixth on the first lap.
Red Bull Racing’s Max Verstappen withdrew from the race with a power unit problem and his teammate, Thai driver Alex Albon, languished near the back of the field with damage from the first lap.
Neither Ferrari finished the race, with a brake failure putting Sebastian Vettel into retirement and Charles Leclerc crashing out of the race in a high-speed shunt at Parabolica.
That crash defined the day, requiring a suspension to repair the barriers and dividing the race into two distinct parts.
Gasly had been mired near the back of the back early in the race, but a well-timed safety car before the red flag catapulted him up to third on the restart grid. With all the frontrunning drivers bar Hamilton out of action and the Briton due to serve his penalty, he was the de facto leader when the race resumed from a standing start on lap 28.
He scythed past Stroll, who restarted from second but was suffering on cold tyres, to build a lead, but further back McLaren’s Carlos Sainz had designs on the top step of the podium.
The Spaniard had been running in second earlier in the race, but whereas Gasly gained during the safety car interruptions, Sainz had dropped to sixth.
He moved into second place on lap 35, but with the best of his tyres worn it took him another 17 laps, the penultimate tour of the grand prix, to close to within a second of the leading car.
But Gasly, having been managing his pace, had time to consider his defence. He was flawless out of the chicanes to ensure Sainz could slipstream him down the straights to beat him to the chequered flag by less than half a second.
“Honestly it’s unbelievable,” he said. “I’m not sure I’m realising what’s happening right now, it was such a crazy race.”
It was AlphaTauri’s second win - the first coming at the hands of Sebastian Vettel at the same circuit in 2008 when the team was named Toro Rosso - and Gasly paid credit to the Italian squad.
“This team has done so much for me,” he said. “They gave me my first opportunity in F1, they gave me my first podium, now they give me my first win.”
Second was bittersweet for Sainz, who seemed likely to find a way past Gasly had he had an extra lap to work with, but the Spaniard was satisfied second was a true reflection of his McLaren’s potential.
“With a normal race I think I would’ve got P2 behind Lewis,” he said. “I wouldn’t have believed I’d have got a chance to fight for victory today.”
Stroll took his first podium finish since 2017, but the Canadian was disappointed to pass up a golden chance to win the race at the restart.
“It’s a bit of a bummer - I think it was wine to lose starting from second, but I just had no grip at the start. I had a ton of wheelspin and everyone just flew by me.”
Lando Norris finished fourth ahead of Bottas, with Renault’s Daniel Ricciardo close behind in sixth.
Hamilton recovered impressively from 30 seconds behind the field after his stop-go penalty on lap 28 to finish seventh with a bonus point for fastest lap.
Esteban Ocon finished eighth for Renault ahead of Daniil Kvyat’s AlphaTaui and Racing Point’s Sergio Perez rounding out the top 10.