Championship rival Kimi Raikkonen was second for Lotus, only a second adrift, after a late tyre change left him hunting down the Red Bull in a thrilling final few laps while team mate Romain Grosjean was third.
Alonso, who started eighth on an adventurous tyre strategy, finished fourth. The Spaniard now has 123 points to Vettel’s 157 after nine of 19 races. Raikkonen has 116.
There were none of the explosive tyre failures that raised safety fears at last weekend’s race in Britain, with the subsequent threat of a driver boycott, but there were still moments of concern on a hot afternoon at the Nuerburgring.
A stray wheel from Mark Webber’s Red Bull injured a cameraman in the pitlane while, on track, Jules Bianchi’s car momentarily caught fire and then rolled towards oncoming traffic after the Frenchman had scrambled out.
That incident brought out the safety car but Vettel hung on for his 30th grand prix win.
The triple champion had never won in Germany or in July but, days after his 26th birthday and a week after mechanical failure forced an agonising retirement at Silverstone, ripped up the statistics to the delight of thousands of flagwaving fans.
“Thank you boys, that was a tough one. They gave me a run for my money. Yes, yes, yes and yes again,” he shouted over the radio.
Fernando Alonso, who like Raikkonen had quicker tyres than Vettel in the closing stages after starting on mediums, chased Grosjean home.
The main drama happened in the first 25 laps of the race.
Both Red Bulls jumped polesitter Lewis Hamilton’s Mercedes at the start, coming close at the first corner but avoiding contact, and Vettel took command from Australian Mark Webber.
Ferrari’s Felipe Massa also got past Toro Rosso’s Daniel Ricciardo into sixth place but spun at the same tricky turn one at the start of the third lap and, with the engine cutting out, had to retire.
Force India’s Paul Di Resta and Jean-Eric Vergne’s Toro Rosso then almost collided in the pits with Force India releasing the Briton as the Frenchman was coming in. The incident was being probed by stewards.
Hamilton – the 2011 winner here – came into the pits for his first tyre change on lap seven, earlier than the other contenders, and Vettel followed him after the next trip round.
Vettel’s team mate Webber then entered the pits on lap nine but the rear right wheel was not attached properly and came away as he accelerated, hitting the cameraman and knocking him over.
An FIA statement said the man was conscious and had been taken to hospital by helicopter and was under observation.
Webber’s wheel was put back on and he returned well down the field. The Australian, who quits for endurance racing at the end of the year, ended up seventh on the track where he first won a grand prix in 2009.
While fans at the rural west German track – famous for the old Nordschleife loop no longer used in Formula One – were coming to terms with the Webber incident, Bianchi’s Marussia came to a halt and flames flared out of the back.
The Frenchman quickly jumped out but before a tractor could remove the car, the Marussia rolled back onto the track into the path of drivers.
Fellow French driver Grosjean, who started fifth, enjoyed a superb race and came out second behind Vettel after his first pit stop with his pace surprising almost everyone.
However, when the safety car went back in he failed to put pressure on Vettel at the front and had to settle for third and his second podium of the season.
Alonso had a superb early battle for fifth with Hamilton, who despite problems with the Mercedes managed to slow the Ferrari after the Italians took a gamble in qualifying to save tyres for the race.
Hamilton’s team mate Nico Rosberg, who won in Silverstone last weekend and was hoping to wow his home crowd in the Silver Arrows, qualified 11th after a team misjudgement on Saturday and failed to make any impact in the race to end ninth.
Mercedes have generally failed to match strong qualifying performances with race pace this season and Hamilton was again easily passed by Vettel on lap 45 of 60, on his way to fifth.