In the closing stages of the race, Hamilton first overtook his teammate Heikki Kovalainen, then Massa, and finally Piquet, whilst also gaining a position due to Nick Heidfeld's late pit stop.
The victory was Hamilton's second consecutive win, having won the preceding British Grand Prix at Silverstone.
The win also put him ahead of his two main rivals in the Drivers' Championship, Kimi Räikkönen (who finished sixth) and Massa, who were on equal points with him before the race.
Ferrari still led by 15 points from McLaren, and 12 from BMW, whose drivers – Nick Heidfeld and Robert Kubica – finished fourth and seventh respectively.
[3] The teams, also known as "constructors", were Ferrari, McLaren-Mercedes, Renault, BMW Sauber, Honda, Force India, Toyota, Red Bull Racing, Williams and Toro Rosso.
[4] Prior to the race, Lewis Hamilton, Kimi Räikkönen, and Felipe Massa led the Drivers' Championship jointly, all with 48 points.
[5] Hamilton had won the preceding British Grand Prix by 68 seconds from Heidfeld and Honda's Rubens Barrichello.
[7] In other technical developments, Ferrari introduced revised bargeboards, exhaust exits and an altered windscreen for its F2008 car.
[8] BMW Sauber added turning vanes to the top of its F1.08's nose, while Toyota removed some bodywork from its TF108's exhaust exits.
[10] Kubica spun off the track and Sébastien Bourdais had a mechanical problem with his flywheel sensor towards the end of the session.
[12] In the final practice session on Saturday – which was held in dry conditions – Kovalainen was fastest, ahead of Massa and teammate Hamilton.
[14] Alonso continued his strong practice form, finishing fourth, with Toro Rosso's Sebastian Vettel making it to fifth position.
My first run during [the third session of qualifying] wasn’t bad, but my final lap was very smooth and I expected to set an even better time.
[15] Completing the field, Kazuki Nakajima was 16th, Nelson Piquet Jr. 17th, Rubens Barrichello 18th, whilst the Force Indias of Adrian Sutil and Giancarlo Fisichella brought up the rear of the grid in 19th and 20th positions.
Kubica ran wide at the final corner on lap four, impeding Trulli and therefore allowing Alonso to attempt an overtaking manoeuvre on the Toyota down the main straight.
[22] Trulli's teammate Glock stayed out on the track longer than all of the other drivers except Barrichello and Piquet, meaning that when he pitted, he was actually in third position and rejoined the race in eighth.
[22] Behind the leaders, fourth-placed Kubica was beginning to catch Kovalainen in third, while Trulli, Räikkönen, Alonso and Vettel battled over the final four point-scoring places.
[22] McLaren believed that Hamilton had enough fuel to stay out, the plan being for him to then rapidly pull away from his heavily fuelled rivals, after the safety car went in.
[21] Piquet, on a one-stop strategy after his poor qualifying performance, had fortuitously pitted immediately prior to the safety car's deployment and was also fuelled to the end of the race.
[22][25] Räikkönen quickly passed Rosberg, and then overtook the squabbling Vettel and Alonso on the way down to the hairpin, while Hamilton desperately tried to pull away at the front.
[26] At the end of the following lap, Heidfeld entered the pits with a sizeable gap over Piquet, returning to the field comfortably ahead of Kovalainen, but behind Hamilton.
[22] Vettel secured eighth – the last points-scoring position – for Toro Rosso, ahead of Trulli in ninth, and Rosberg in 10th.
[22] A record of sixteen drivers finished on the lead lap, beating the previous highest number of fourteen at the 1999 Belgian Grand Prix.
[27] Following the podium ceremony, in which two Brazilian drivers participated for the first time since the 1991 Belgian Grand Prix,[24] the top three finishers appeared in the obligatory press conference.
We'd expected the track to be cleared of debris a little faster than it was, which would have allowed the Safety Car to come in a bit earlier.
After qualifying yesterday I was thinking that my weekend was over, but we opted for an aggressive strategy in the race and the team made some great decisions when the safety car came out.
[29]Although Piquet's result was fortuitous, Renault Engineering Director, Pat Symonds, subsequently praised him for stepping up to the job of staying with the leaders in the final stint of the race.
[30] Meanwhile, Massa commented that his car was not in good order during the race: "It was just slow with difficult stability and also on braking I think I had a little problem as well and lost a lot of performance.
"[28] Teammate Räikkönen also struggled with low grip and hot brakes for the duration of the race, while Kovalainen and Kubica had problems with their tyres.
Toyota subsequently confirmed that the failed suspension component had already completed a full race distance at the previous Grand Prix, and resolved to adjust its checking procedures.