The successful pass came on entry to the final chicane at the start of the last lap, Rossi staying close enough to Stoner through the left-right transition to block another overtake on the exit.
Rossi then put several bike lengths between himself and claimed his best Ducati finish by over one-second.
Pole sitter Pedrosa, LCR Honda rookie Stefan Bradl and Rossi's team-mate Nicky Hayden
were promoted to fourth, fifth and sixth by the Tech 3 errors, while Spaniards Hector Barbera (Ducati) and Alvaro Bautista (Honda) completed the top ten.
James Ellison scored his first MotoGP points of the season in style by bringing his PBM ART home as the top CRT machine in eleventh place. Speed Master's Mattia Pasini, in twelfth, was the final rider on the lead lap.
Home star Randy de Puniet, the top CRT rider in practice and qualifying, lost control of his Aspar ART just metres after the start – the bike fish-tailing and then dumping the bemused Frenchman on the asphalt.
Lorenzo's Factory Yamaha team-mate Ben Spies also got sideways off the line, leaving him just 18th at the end of lap one. The Texan worked his way into the points, but then pitted before returning to finish 16th.
Chris Vermeulen - riding in his first MotoGP event since 2009, at the scene of his wet 2007 Suzuki victory - did well to avoid the fallen de Puniet at the start, but later pitted for a helmet change on his way to 17th.
Vermeulen was riding in place of the injured Colin Edwards
for Forward Racing. Edwards aims to return at the forthcoming Catalan Grand Prix, from June 1-3.
Seven time F1 world champion Michael Schumacher was present as Le Mans today. The German was seen chatting to the likes of Rossi before the race, which he watched from the Tech 3 pits before taking part in the podium ceremony.
French Grand Prix:
1. Jorge Lorenzo
2. Valentino Rossi
3. Casey Stoner
4. Dani Pedrosa
5. Stefan Bradl
6. Nicky Hayden
7. Andrea Dovizioso
8. Cal Crutchlow
9. Hector Barbera
10. Alvaro Bautista
11. James Ellison
12. Mattia Pasini
13. Aleix Espargaro
14. Michele Pirro
15. Yonny Hernandez
16. Ben Spies
17. Chris Vermeulen
18. Ivan Silva