McLaren's Lewis Hamilton led the Hungarian Grand Prix from start to finish on Sunday to stretch his championship lead over unhappy team mate Fernando Alonso to seven points.
The 22-year-old British rookie took his third victory and 10th podium finish in 11 races, 0.7 seconds ahead of Ferrari's Kimi Raikkonen.
Germany's Nick Heidfeld was third for BMW Sauber.
Spain's double world champion Alonso, who was stripped of pole position and demoted to sixth place on the starting grid for unnecessarily impeding Hamilton in Saturday's qualifying, finished fourth.
As punishment for that same incident, but subject to appeal, leaders McLaren were barred from scoring points towards the constructors' championship in the race.
McLaren remained on 138 points, with Ferrari narrowing the gap on 119 with six races remaining.
Ferrari's Felipe Massa, third in the championship before Sunday's race, failed to score after starting 14th and slipped to fourth place overall.
Hamilton has 80 points, Alonso 73, Raikkonen 60 and Massa 59 in a championship that remains very much a four-way battle with an appeal hearing into a spy controversy also hanging over McLaren's hopes.
The McLaren rookie led all 70 laps of a race that, in contrast to all the excitement and controversy away from the track in the build-up, was uneventful and processional until the closing stages when Raikkonen closed right up on the Briton.
The Finn, pushing hard on a circuit that is a nightmare for overtaking, set the fastest lap of the race right at the end.
Poland's Robert Kubica, marking his first anniversary in Formula One, was fifth for BMW Sauber with Toyota's Ralf Schumacher sixth.
Germany's Nico Rosberg was seventh for Williams with Renault's Finnish rookie Heikki Kovalainen taking the last point for the struggling champions.
Briton Jenson Button, who took his first grand prix win in a wet Hungarian race last year after 113 starts, retired his Honda after 38 laps.