Hamilton claimed his fifth win here in Shanghai after leading every lap in the inclement conditions as Vettel, who took the chequered flag in Australia a fortnight ago, recovered from fifth to finish six seconds adrift of his title rival.
Dutch teenager Max Verstappen produced another virtuoso display to complete the podium after he rose 13 places from 16th on the grid - including a sensational nine on the opening lap - to cement his status as the rising star of the sport.
But while the 19-year-old’s chance will surely come to challenge for the biggest prize in motor racing, it looks likely as though it will have to wait for at least another year.
For this season’s championship is now almost certainly a straight shoot-out between Hamilton and Vettel.
Vettel’s race here was scuppered by a portion of bad luck. His Ferrari team pulled him into the pits to change to slick tyres on just the second lap following the deployment of the virtual safety car as Lance Stroll was punted out of the race by Sergio Perez.
But when the safety car was deployed for real only moments later - after Antonio Giovinazzi, the Italian filling in for the unfit Pascal Wehrlein, crashed his Sauber for the second time in as many days - Hamilton could stop for dry rubber.
It allowed him to retain his lead before marching to his first win of the campaign, the 54th of his incredible career, and his fifth from the last six grands prix stretching back to last season. The result leaves Hamilton and Vettel hand-in-hand on 43 points.
“It is going to be one of the closest championships, if not the closest I’ve personally ever experienced,” proclaimed Hamilton, 32, who is relishing his battle with Vettel, three years his junior, this year.
“The scenario I am in right now, I am fighting against a four-time world champion, who is at his best and is phenomenally quick, and a Ferrari team which is the best they have been in a decade. I feel like I am at my best, too.
“The ultimate fighter always wants the best battle that you can have because when you come out on top it is so much more satisfying.
“I love this fight that we are having and sitting there with Sebastian I was like ‘this is going to go right down to the end of the season’, and I hope for both of us there is nothing mechanical that will come in between our sheer battle through ability.
“I really hope it is an out-and-out fight through stubbornness, through mental stability, through fitness, composure and through just out-driving the person on track.”
Vettel’s premature pit stop left the German having to do just that. He was stuck behind Ferrari team-mate Kimi Raikkonen for the opening phase of the grand prix before he made his move on lap 20.
He then took on Daniel Ricciardo, his former team-mate at Red Bull, with the move of the race. Vettel dived to the outside of the Australian at turn six - and despite a near-disastrous ending as they banged wheels - the gutsy Ferrari man held his nerve and made the pass stick at the following corner.
By now, Verstappen was up to an incredible second, but the Dutchman’s only error of a spectacular race, was over-cooking the penultimate corner on ageing tyres.
It allowed Vettel through and he set about chasing Hamilton down, but the triple world champion, who is now level with Alain Prost on 106 career podiums from just 190 starts (only the great Michael Schumacher has more) was in no mood to be caught.
“Lewis did the best job,” said Vettel. “We were unfortunate with the safety car. We finished second and I am very happy with that.”