Just 0.614sec covered the top three after 20 laps of racing as Aprilia Racing's Aleix Espargaro finished second and Jack Miller made it a double podium for Ducati.
Seemingly every rider had a tale to tell after a breathtaking Sunday afternoon in Britain.
British MotoGP: Johann Zarco grabs pole position with a new lap record at Silverstone circuit
2022 FIM MotoGP World Championship leader Fabio Quartararo (Monster Energy Yamaha MotoGP) finished eighth after serving his Long Lap Penalty, but only after re-passing a battered Aleix Espargaro (Aprilia Racing) on the final lap.
Pole-sitter Johann Zarco (Prima Pramac Racing), however, was one of two retirements after he crashed while leading.
Jorge Martin finished fifth and Miguel Oliveira (Red Bull KTM Factory Racing) came from Row 5 on the grid to claim sixth at the chequered flag, while Alex Rins faded to seventh in the end.
RESULTS (Top 10)
1. Francesco Bagnaia (Ducati Lenovo Team)
2. Maverick Viñales (Aprilia Racing) + 0.426
3. Jack Miller (Ducati Lenovo Team) + 0.614
4. Enea Bastianini (Gresini Racing MotoGP) + 1.651
5. Jorge Martin (Prima Pramac Racing) + 1.750
6. Miguel Oliveira (Red Bull KTM Factory Racing) + 3.021
7. Alex Rins (Team Suzuki Ecstar) + 3.021
8. Fabio Quartararo (Monster Energy Yamaha MotoGP) + 3.819
9. Aleix Espargaro (Aprilia Racing) + 3.958
10. Marco Bezzecchi (Mooney VR46 Racing Team) + 6.646
1. Fabio Quartararo (Monster Energy Yamaha) - 180
2. Aleix Espargaro (Aprilia) - 158
3. Francesco Bagnaia (Ducati) - 131
4. Enea Bastianini (Gresini) - 118
5. Johann Zarco (Pramac Racing) - 114
1. Aprilia Racing - 240
2. Ducati - 238
3. Monster Energy Yamaha - 206
4. Pramac Racing - 195
5. Red Bull KTM - 179
Zarco, who started on pole and third in the championship standings, saw his hopes of a first MotoGP victory end after he crashed out in the lead, which will also have a significant impact on his title chances.
The Frenchman ad a great shot at finally clinching a maiden MotoGP race win, but disaster struck when he folded the front and crashed at Vale on Lap 5.
Vinales and Martin had been chopping and changing in until the former completed a decisive move on Lap 16 at Village.
The Spaniard jumped further up the standings in the final laps, taking Rins, Miller and then Bagnaia to cap off a stellar ride.
Soft front tyre
Miller, struggling for grip on his soft front tyre, took the final podium place, while the battle for fourth position raged all the way until the end.
In the 2022 FIM MotoGP World Championship standings, Quartararo is now 22 points up on Aleix Espargaro, but Bagnaia has closed to 49 points off top spot. 'Pecco' now has two wins in a row and is proving he is certainly not out of the hunt.
Over to Austria
Marco Bezzecchi (Mooney VR46 Racing Team) rounded out the top 10, with the rest of the points finishers being Brad Binder (Red Bull KTM Factory Racing), Luca Marini (Mooney VR46 Racing Team), Takaaki Nakagami (LCR Honda Idemitsu), Pol Espargaro (Repsol Honda Team), and Franco Morbidelli (Monster Energy Yamaha MotoGP). Joining Zarco as a retirement was Suzuki's Joan Mir, who crashed out of eighth position on Lap 15 at Stowe.
The MotoGP caravan now heads next to the Styrian hills and the Red Bull Ring, in Austria for the CryptoDATA Motorrad Grand Prix von Osterreich on August 21.
Get breaking news alerts.
You have already subscribed