LE MANS -  Spain's Maverick Vinales snatched victory in a thrilling French Grand Prix at Le Mans on Sunday after a captivating duel with Italian veteran Valentino Rossi.

Vinales surges into the lead of the MotoGP world championship at Rossi's expense after the 38-year-old Italian slid off in the final lap as he chased the fellow Yamaha. Local favourite Johann Zarco -- also on a Yamaha -- was second and Spain's Dani Pedrosa, of Honda, was third. The 22-year-old Vinales, who lost the early lead to Zarco after starting from pole, said: "Incredible, incredible. I just gave my best. I saw Valentino make a mistake and I made a push after two disastrous races."

Vinales and Rossi were battling for the win throughout but stepped up their breathless battle with three laps to go when Rossi grabbed the lead, sending the 100,000 crowd under the Le Mans sunshine wild. It looked all over, but Rossi made an uncharacteristic error to allow Vinales back into the lead on the last lap, then Rossi lost control and skidded out the race when pushing hard to get his nose back in front in the closing moments.

Rossi was left distraught afterwards as Vinales celebrated a third win from five grands prix this season to lead the standings on 85 points, with Pedrosa on 68 and Rossi still stuck on 62 in third. Honda's defending world champion Marc Marquez, of Spain, sits fourth after he too crashed out, on a day of carnage at Le Mans.

Earlier, half the Moto3 field went flying off the track in a mass pile-up that caused the race to be stopped and restarted. What appeared to be leaked fluid on only the second lap of the race saw a succession of riders slide off at high speed one after the other into the gravel trap, with some of the racers whacked by flying bikes.

Championship leader and eventual winner Joan Mir from Spain was among those who went for a medical check-up -- as stewards worked frantically to clean up the track -- but none of the riders was badly hurt and all were able to return for the restart. When the action got back under way 30 minutes later -- the race was shortened to 16 laps -- the Honda rider Mir emerged victorious.

It was the 19-year-old's third victory of the season and extended his lead in the championship standings. Franco Morbidelli made it four victories from five races this season as he held off hard-charging fellow Italian Francesco Bagnaia to win the Moto2 race.

Morbidelli appears peerless in the championship, his latest well-deserved victory stretching his lead in the standings over fellow Kalex man Thomas Luthi, the Swiss who was third behind Bagnaia. The 22-year-old Morbidelli tops the standings with 100 points, with Luthi on 80 and a third Kalex, Alex Marquez of Spain, on 62.