Celestino Vietti sat patiently in the lead group before making his move on the penultimate lap and making it stick to win the Moto3 French Grand Prix.

There was a small amount of rain before the sun returned  for the race. The Sky Racing Team VR46 KTM rider made his move late on and as the only rider with a harder optioned tyre in the rear, he seemed confident of grip in the changable conditions at the iconic Le Mans track.

The Italian was pushed all the way to the line by Tony Arbolino and Albert Arenas, but lapped cleanly and held firm to lead over the line for his second career win. This was all the more impressive given his tenth place in qualifying and crash in warm-up where his team-mate Andrea Migno had to avoid his fall, leaving the pair in the gravel.

Second went to Honda rider Arbolino, who was first briefly as the lead changed hands repeatedly in the final laps for Rivacold Snipers.

Arenas looked everywhere for a way through but third in a highly competitive, crash-filled race was enough to move him back into the championship lead - Ai Ogura crashed in qualifying and went backwards from his 17th place grid start. The Honda Team Asia rider benefited from all the falls ahead of him to climb to ninth as he battled back.

The Gaviota Aspar man now has a six point advantage over Ogura headng to Aragon, with a total of 135.

Pole-sitter Jaume Masia did a lot of the leg work, leading the way at the front for most of the distance, only to be raced out of the podium places - he finished fourth for Leopard.

Migno was next to see the chequered flag in fifth on the second Sky bike, marking a strong result for the team. He showed his pace for the race after topping warm-up.

Ayumu Sasaki put in a string of fastest race laps early on to pull back into contention, he fought to sixth by the close for Red Bull KTM Ajo Tech 3 - his best result of the season so far.

Raul Fernandez bridged the gap to the leaders caused by all the falls to claim seventh for Red Bull KTM Ajo, passing Gabriel Rodrigo late on.

The Kommerling Gresini man was safe in eighth with a gap of over twelve seconds back to Ogura.

The Japanese rider had Carlos Tatay close behind to complete the top ten - it is the rookie Reale Avinita riders best race result to date by far.

The battle for the final points was as hard fought as the one for the win, with Sergio Garcia a close eleventh for Estrella Galica 0,0 and Filip Salac (Rivacold Snipers) right behind in twelfth for the second race in a row.

He just held off Leopard’s Dennis Foggia who had to settle for 13th as he tried to keep Riccardo Rossi (BOE Skull Rider Facile Energy) at bay.

The final point went to Stefano Nepa (Gaviota Aspar) who denied Barry Baltus (CarXpert PruestelGP), though sixteenth was strong progress from the man who started last on the grid.

Alonso Lopez had duelled his way towards the top ten from 23rd on the grid before clipping the back of his Sterilgarda Max Team racing team-mate Romano Fenati, sending both Husqvarnas in the gravel. Fenati immediately checked on up on Lopez in the garage to let him know there were no hard feelings over the incident.

Tatsuki Suzuki crashed his SIC58 Squadra Corse bike shortly after with 15 laps remaining. Nico Antonelli also didn’t see the end of the race, falling on lap 20.

Davide Pizzoli, was next to exit, with Darryn Binder being forced to retire as his bike stopped working, causing a scary moment as he performed a great save in the lead pack.

Jeremy Alcoba collected John McPhee on his way out of the race with five laps left to run effectively ending the British riders title hopes. Kaito Toba also failed to go the distance.