Hamilton started 10th after a series of penalties, but on an extraordinary afternoon in Sao Paulo he fought his way past rival Max Verstappen with just 12 laps left following a ding-dong battle in one of the races of the season.
His Mercedes teammate Valtteri Bottas took third ahead of Sergio Perez.
Hamilton slashed Verstappen’s title lead from 21 to 14 points with three races left and 78 points still available.
“Wooo, yes, come on guys,” roared a jubilant Hamilton on the radio. “Thank you so much, let’s keep going, let’s keep pushing.”
Hamilton, starting down the order following a combined 25-place grid penalty, gained four spots on the opening lap to move up to sixth before roaring past Ferrari’s Carlos Sainz and Charles Leclerc on successive laps. And by the start of lap 5, the world champion was up to third after pole-sitter Bottas, passed by both Verstappen and Perez on the opening lap, was ordered aside at the first corner following an instruction from his Mercedes team.
The safety car was sent out after AlphaTauri’s Yuki Tsunoda and Lance Stroll collided through the chicane, and Hamilton was just 4.5 seconds off the lead.
The race resumed on lap 12 with Perez keeping Hamilton at bay, but the Mexican’s resistance lasted just seven laps. Hamilton thought he had got the job done at the start of lap 18 after gliding past Perez on the start-finish straight, only to see the Red Bull driver race back past at the left-hander fourth corner. However, the seven-time world champion got his man the following lap, and this time Perez could not fight back
Verstappen was 3.6 seconds up the road before Hamilton was the first to blink for new rubber. He stopped on lap 26, with Verstappen following suit the next time around. The gap was down to just 1.5secs with 44 laps remaining. By lap 32, Hamilton was less than a second behind but failed to make a real impression.
In came Verstappen for a second change of tyres on lap 40. When Mercedes eventually hauled Hamilton in three laps later, the Dutchman’s lead had doubled to two seconds. But Hamilton was not deterred and within four laps he was crawling all over the back of Verstappen’s Red Bull gearbox.
On lap 48, Hamilton drew alongside Verstappen on the 200mph drag to the fourth corner. The championship protagonists went wheel-to-wheel with Hamilton fractionally ahead and holding the racing line going into the corner.
But Verstappen stamped on his brakes later and both drivers ran off the track, with Hamilton kicking up turf as he rejoined the track. The stewards looked at the flashpoint but took no further action.
“Lewis, apparently there is no investigation necessary for running you off the track,” said Hamilton’s race engineer Peter Bonnington. “Of course not, of course,” came Hamilton’s sarcastic reply.
Would Hamilton get another chance? The answer arrived on lap 58 with Verstappen weaving from one side of the track to the other in a desperate attempt to stop Hamilton from getting through.
It worked, but only for one lap as Hamilton out-dragged his Red Bull rival before the braking zone for the fourth corner with a dozen laps remaining. Verstappen had no reply.
Cue a huge roar from the Brazilian fans and wild celebrations in the Mercedes garage.
Verstappen was then slapped on the wrists by the stewards with a black-and-white warning flag for his weaving antics on lap 58.
Up front, Hamilton kept his composure to cross the line 10.4secs clear and claim his first victory since the Russian Grand Prix in September and only his second since the summer break.