Jorge Lorenzo extended his MotoGP championship lead with a commanding victory at Silverstone.
In his wake, a huge battle for the podium spots ended with Andrea Dovizioso in second and Ben Spies taking his first MotoGP podium in third, while Casey Stoner recovered from a disastrous start to take fifth behind Nicky Hayden, and Dani Pedrosa faded to eighth.
Qualifying star Randy de Puniet was in the hunt for second until the final laps, when he was elbowed back to sixth place.
The opening lap had been a battle between Lorenzo's Yamaha and Pedrosa's Honda, with Lorenzo holding his pole advantage through Copse, before Pedrosa dived ahead into Stowe.
But Lorenzo was only behind for a single straight, as he outbraked Pedrosa into Vale. The latter retaliated into Abbey, only to run wide and let both de Puniet's LCR Honda and his factory Honda teammate Dovizioso through.
Lorenzo was unstoppable after that, building an eight-second lead with apparent ease, while Pedrosa, who has crashed twice this weekend, gradually faded away.
Attention then focused on de Puniet's efforts to hang on to second under big pressure from an assortment of rivals. Dovizioso made it through on lap six, but could not shake off de Puniet and lost the place again two laps later. Only at half distance was Dovizioso able to finally secure second.
De Puniet stayed in third until Hayden (Ducati) slipped ahead in the Arena section with four laps to go. Spies (Tech 3 Yamaha) followed immediately after, with the two Americans then mounting their own huge battle for third. Side by side repeatedly over the closing laps, Spies grabbed the position on the last lap and resisted Hayden's efforts to snatch third back again.
Stoner was right on their tails by the end too. He had tumbled to last off the line and had to pick his way through the field, getting stuck behind Pedrosa for several laps. But by the checkered flag he was within 0.4sec of a podium finish.
Behind de Puniet, Marco Simoncelli had his most convincing MotoGP performance yet and took seventh. His Gresini Honda team-mate Marco Melandri crashed at Brooklands on the opening lap while trying to pass Spies.
Loris Capirossi also fell, going off at Copse mid-race as Suzuki's unhappy weekend got no better.
Only 15 bikes took the start, Interwetten Honda's Hiroshi Aoyama having been sidelined with back pain following his violent warm-up accident.
Pos Rider Team Time/Gap
1. Jorge Lorenzo Yamaha 41m34.083s
2. Andrea Dovizioso Honda + 6.743s
3. Ben Spies Tech 3 Yamaha + 7.097s
4. Nicky Hayden Ducati + 7.314s
5. Casey Stoner Ducati + 7.494s
6. Randy de Puniet LCR Honda + 9.055s
7. Marco Simoncello Gresini Honda + 14.425s
8. Dani Pedrosa Honda + 15.313s
9. Colin Edwards Tech 3 Yamaha + 27.954s
10. Aleix Espargaro Pramac Ducati + 42.394s
11. Hector Barbera Aspar Ducati + 43.365s
12. Alvaro Bautista Suzuki + 43.408s
13. Mika Kallio Pramac Ducati + 43.580s
Loris Capirossi Suzuki 13 laps
Marco Melandri Gresini Honda 0 laps
Hiroshi Aoyama Interwetten Honda -