Kimi Räikkönen tog starten före Massa när starten gick på Magny Cours och de båda Ferrariförarna drog ifrån övriga fältet som anfördes av Trulli före Alonso, Kubica, Glock och Webber.
Massa triumferade på Magny Cours
Hamilton gjorde en omkörning utanför banan i inledningen som tävlingsledningen granskar.
Efter fyra varv tvingades Button i depån för att få en ny noskon efter en rundtur utanför banan.
Lewis Hamilton tog sig upp på en nionde plats efter fem varv då Kovalainen släppte förbi honom. Efter sju varv så började Hamilton att attackera Nelson Piquet Jr.
Hamilton får en drive through för sin inledande felaktiga omkörning och tappar massor av mark till en 13:e plats.
Alonso är först in för ordinarie depåstopp efter 15 varv med en bil som inte hade bra balans.
Button tvingas att bryta efter 17 varv.
Trulli och Kubica gör sina stopp efter 20 varv och det är fortsatt Trulli före Kubica efter stoppet.
Räikkönen gör sitt första stopp efter 21 varv i solklar ledning. Massa kommer in efter 23 varv.
Räikkönen leder med drygt sex sekunder före Massa efter 30 varv. Trulli är trea 31 sekunder bakom Räikkonen och han jagas av Kubica, Heidfeld, Alonso och Webber.
Med 36 varv kvar så börjar det komma en del regnstänk.
Med 33 varv kvar så tappar Kimi Räikkönen fart sedan ett av hans avgasrör lossnat. Kimi fortsätter dock att köra men får släppa Massa förbi sig och ser hur Trulli plockar in tid på honom.
Med 14 varv kvar så börjar det regna lite.
Med 17 varv kvar blir Kubica passerad av Kovalainen som kör starkt och närmar sig också Trulli.
Under slutvarven är det en hård kamp om tredje platsen mellan Trulli som jagas av Kovalainen som i sin tur har Kubica tätt bakom.
Regnet upphörde ganska omgående och då drog Trulli åter upp tempot med Kovalainen tätt bakom medan Kubica släppte.
Kovalainen försökte attackera på sista varvet men missade efter att ha varit uppe jämsides.
Massa tog hem segern före Räikkönen trots sina tekniska problem. Trulli höll undan och tog tredje platsen före Kovalainen, Kubica, Webber, Piquet Jr och Alonso som tog sista poängplatsen.
I och med segern så gick också Massa upp i ledningen sammanlagt.