Ferrari’s Vettel passed pole-sitter Hamilton on the opening lap of the Spa-Francorchamps race before taking the chequered flag 11 seconds clear of his rival.
Unlike in the wet of qualifying 24 hours earlier, Hamilton’s Mercedes was no match for Vettel, with Red Bull driver Max Verstappen completing the podium places.
Fernando Alonso was sent airborne over the Sauber of Charles Leclerc after Nico Hulkenberg crashed into the back of the Spaniard’s McLaren at the opening bend.
But all three drivers walked away from the terrifying crash with Alonso suggesting the halo, the cockpit protection device controversially introduced this season, may have avoided serious injury to Leclerc.
Following back-to-back victories for Hamilton before the summer break, Vettel needed to stop the rot on Formula 1’s return to action here in the Ardennes forest.
On Saturday, Hamilton took advantage of a rain shower in qualifying to secure the front slot on the grid, but Vettel won the race by moving past his rival in the opening exchanges.
Hamilton held off Vettel at La Source but then he was unable to stop the Ferrari car from sailing past him on the ensuing Kemmel Straight.
Vettel came under pressure from Hamilton at the right-handed Les Combes but the Ferrari man held the racing line to retain the lead. The safety car was then deployed following the chaotic start behind the leaders.
Hulkenberg missed his braking point for La Source, and in a plume of tyre smoke careered into the back of Alonso’s McLaren. The force of the impact sent Alonso into the air and over the top of Leclerc’s Sauber.
The front of Alonso’s car then hit Leclerc’s halo. The three-pronged halo which sits above the driver’s head became mandatory this year, and Alonso said it did its job.
“I flew over his (Leclerc) car and the halo was a very good thing to have today,” the 37-year-old said. “Looking at the replay I think it helped him.”
The race resumed at the end of lap four but Ferrari’s superiority in the dry paid dividends as Vettel romped to a timely win with the Italian team’s home race in Monza just a week away.
“Lewis pushed me quite far to the left at the first corner, but I knew my chance would be up the hill and I climbed it well,” said Vettel as he explained his start.
“My timing was crucial and I managed it perfectly. As soon as I was ahead I was quite relieved.”
Hamilton added: “Congratulations to Seb. I did everything I could in the race. He drove past me like I wasn’t there on the straight.
“They (Ferrari) have got a few trick things going on in the car so we have got to keep pushing to see if we can catch up.”
Verstappen started seventh but finished third after cruising past the Force India cars of Sergio Perez and Esteban Ocon and Romain Grosjean’s Haas early on.
Valtteri Bottas moved up 13 places to fourth despite suffering front wing damage after hitting Sergey Sirotkin’s Williams on the first lap. Perez and Ocon finished fifth and sixth for the Force India team. Red Bull’s Daniel Ricciardo and Kimi Raikkonen both retired with car damage after the Australian hit the Ferrari on the opening lap.