The Ferrari driver made a mistake under pressure from the world champion, running wide at Turn Three, and pushed Hamilton wide as he rejoined the track.
Race stewards decided Vettel had rejoined the track unsafely and penalised him five seconds for forcing Hamilton off the track.
The Mercedes driver would likely have passed Vettel had he not been blocked with 22 laps still remaining.
The move will doubtless lead to a major controversy but Hamilton was clear that he felt Vettel had been unfair.
He said over the radio immediately after the incident: “He’s just come back on the track so dangerously.”
Vettel complained vigorously, saying: “Where the hell else was I supposed to go? I had grass on my wheels.”
Told to stay focused, he said: “I am focused but they are stealing the race from us.”
Vettel complained that Hamilton could have gone to the inside but that was inaccurate reading of the situation as it unfolded.
Nevertheless, doubtless many will feel that Vettel should have been excused and the drivers allowed to race.
However, others will see it as yet another error under pressure from Vettel, whose 2018 season unravelled as a result of a series of them and who made another in Bahrain earlier this year, spinning after being passed by Hamilton
And the stewards may well have used precedent to inform the decision, such as when Red Bull’s Max Verstappen was penalised in the same fashion for forcing then-Ferrari driver Kimi Raikkonen off the track in last year’s Japanese Grand Prix.
How did it unfold?
Vettel had been in front of the race from the start, after converting his pole position, and led through the pit stops.
But once on to the hard tyres after the stops, Hamilton began to pile the pressure on Vettel.
He rejoined after his stop on lap 29 five seconds behind Vettel and was on his tail 10 laps later.
Hamilton stayed within a second of Vettel for the next nine laps until the key moment.
Vettel made a mistake entering the challenging Turn Three/Four chicane and ran over the grass on the second, left-handed part.
As he rejoined the track, Hamilton went to overtake him around the outside, but Vettel did not leave him a car’s width on the outside of the track and the Mercedes driver had to back off.
It cost Ferrari another victory in 2019, a year in which Mercedes have won every race, but in which the Italian team could have had two and possibly three wins out of seven.
And it also ended what had been a tense, exciting race, in which two of the finest drivers in the world were battling closely.
Vettel’s team-mate Charles Leclerc lost victory in Bahrain when his engine hit problems late in the race, the Monegasque was looking the form man in Azerbaijan before a crash in qualifying. And now Vettel has cost Ferrari another win.
He was furious with the decision, saying over the radio at the end of the race: “No, no, no. Not like that. You have to be an absolute blind man, you go on the grass how are you supposed to control your car. This is the wrong world.”
He then pulled over in the pits long before the parc ferme area where he is meant to stop and pushed his car backwards into the garage of governing body the FIA.
Then he stormed off into the Ferrari area, and appeared to decide he was not going to go to the podium, but was collected by an F1 official, and then went through the Mercedes garage before finally heading to the podium.
On the way, Vettel moved the number one board from in front of Hamilton’s Mercedes and moved it in front of the empty space where his car should have been.
He entered the green room and said to Hamilton: “Where am I supposed to go?”
Hamilton responded with a shrug: “Ach.” Then added: “Hard race, though, man.”
Hamilton, meanwhile, received some boos from the crowd as he insisted: “Naturally that’s absolutely not the way I wanted to win.
“I took the corner normally, but when you come back on the track you are not meant to come back straight on the racing line. You’re meant to rejoin safely.
“I forced the error and he went wide… we nearly collided, but that’s motor racing.”
Hamilton had dropped back to 2.5secs behind Vettel when the drivers were informed of the penalty but he soon closed right back up to Vettel’s tail, as Leclerc in third place began to close on both of them.
Leclerc did not quite manage to get close enough to Vettel to overtake him once the German’s penalty was applied.
Hamilton’s team-mate Valtteri Bottas had a quiet race on his way to fourth place, while Red Bull’s Max Verstappen fought back from ninth on the grid to take fifth ahead of the Renaults of Daniel Ricciardo and Nico Hulkenberg.
What happens next?
France in two weeks’ time. Unfortunately for Ferrari, the track layout is likely to favour Mercedes and that first win for the red cars will probably have to wait a while longer.
What they said
Sebastian Vettel: “Well I think first of all, I really enjoyed the race and the crowd on every lap. Seeing them cheer me on it was very intense. I think you should ask the pitwall what they think we had a great show and Lewis showed some good respect.”
Charles Leclerc: “I’m pretty happy with my performance. We were very quick. The race pace was strong. I’m disappointed for the team – I don’t know what happened [with Seb] but the team deserved a victory today”