Jenson Button celebrated his 200th Formula One race with victory at the Hungarian Grand Prix, where Red Bull's Sebastian Vettel stretched his commanding lead in the championship with a second-place finish in wet conditions on Sunday.
McLaren's Button was steadiest in the constant drizzle at the Hungaroring circuit to secure his 11th career victory, finishing 3.5 seconds in front of Vettel.
Fernando Alonso of Ferrari finished third ahead of McLaren's Lewis Hamilton, who led for most of the race but dropped back due to five pit stops and a drive-though penalty.
Mark Webber was fifth to stay closest in the standings to his Red Bull teammate, who now leads by 85 points.
Button's first ever F1 victory also came in Budapest in 2006 in similar conditions, just as his previous win this season came in wet weather in Montreal.
Pole sitter Vettel bounced back from a season-worst fourth-place at the German GP, after he was overtaken early on by Hamilton and then Button.
The 24-year-old Vettel leads comfortably overall with 234 points — ahead of Webber with 149. Third-place Hamilton trails Vettel by 88 points and Alonso is 89 behind. Button, who also won the Canadian GP on June 12, is 100 points back. A race win is worth 25 points.
The constant drizzle at the Hungaroring track made for an unnerving race as cars slipped off track and spun out throughout. Tire strategy proved key with Hamilton swapping a number of times then finishing with a penalty after forcing Force India's Paul Di Resta off-track as Hamilton recovered from a spin.
Red Bull's inability to convert poles into race wins continued as Vettel led the McLarens out of the slick start until the fifth lap when Vettel ran wide at the second turn for Hamilton to move inside. Red Bull has started all 11 races on pole, winning six.
Button passed Vettel at the same corner nine laps later while Webber moved into fourth behind Vettel after passing Alonso, who was struggling with grip.
The race settled into a set running order with the McLarens leading the Red Bulls and Alonso vying to get past Webber.
But rain came again as Hamilton spun out to cede the lead to Button after 48 laps, with the pair swapping positions as cars slid off track and even in the pit lane, where Virgin's Jerome d'Ambrosio spun out to send his pit crew scurrying into the garage for protection.
Button eventually went in front after Hamilton pitted to swap tires. Hamilton soon found himself down in sixth position after the penalty but got past Felipe Massa and then successfully challenged Webber on the straight with five laps left to take fourth.
Button meanwhile dug in and found pace as Vettel pressed for victory, with the Briton moving 11th all-time in number of GPs raced.
Felipe Massa of Ferrari finished sixth ahead of Di Resta, with Sebastien Buemi of Toro Rosso ending eighth after a 23rd-place start. Nico Rosberg of Mercedes was ninth and Jaime Alguersuari of Toro Rosso took the last point in 10th.
Michael Schumacher of Mercedes dropped out of the race after 28 laps, soon after Nick Heidfeld quickly exited his Renault, which was engulfed in flames after being released from the pit lane in a smoldering state. Stewards eventually put the blaze out although Vettel nearly ran into fire officials coming out of a pit stop.