Toni Kroos maakte diep in de blessuretijd uit een vrije trap de winnende treffer en zorgde daardoor voor een wonderbaarlijke ontsnapping voor de titelverdediger, die de laatste tien minuten met een man minder speelde.
Duitsland en Zweden hebben nu beide drie punten. Mexico, dat eerder op zaterdag met 2-1 van Zuid-Korea won, gaat met zes punten aan kop in de groep.
Zweden kwam in het Fisht Stadium van Sochi in de 32e minuut op voorsprong via een knappe treffer van voormalig PSV'er Ola Toivonen. Vlak na rust maakte Marco Reus gelijk.
De 'Mannschaft' moest in de slotfase met tien man verder, nadat verdediger Jérôme Boateng zijn tweede gele kaart had gekregen. Met een gelijkspel balanceerde Duitsland op de rand van uitschakeling, maar Kroos zorgde in de laatste seconden voor enorme opluchting en een aanzienlijk beter uitzicht op een vervolg in Rusland.
De ploeg van bondscoach Joachim Löw sluit de groepsfase woensdag af tegen het puntloze Zuid-Korea. Zweden speelt dan tegen Mexico, dat vorige week voor een daverende verrassing zorgde door de Duitsers met 1-0 te verslaan.
Tactische keuzes
Sinds zijn aanstelling als bondscoach in 2006 kreeg Löw zelden zoveel kritiek als na dat duel met de Mexicanen. Zelfs de spelers klaagden openlijk over zijn tactische keuzes. De zo succesvolle bondscoach van de 'Mannschaft' greep voor het duel met Zweden hard in. Hij zette Mesut Özil en Sami Khedira, twee belangrijke schakels uit het 'gouden' elftal van het vorige WK, op de bank in Sochi.
De wereldkampioen begon sterk met een grote kans voor Julian Draxler, maar het offensief luwde al snel. De Zweedse spits Marcus Berg verzuimde knullig balverlies van Antonio Rüdiger af te straffen, maar even later was het wel raak toen Kroos de bal zomaar inleverde op het middenveld. Toivonen profiteerde door keeper Manuel Neuer te verschalken met een lobje (1-0).
Met Mario Gómez als extra aanvaller in de ploeg kwam Duitsland kort na rust langszij via Reus. Omdat ook 1-1 eigenlijk niet genoeg was, bleef de ploeg van Löw jagen op meer, ook nadat verdediger Boateng in de slotfase met zijn tweede gele kaart van het veld was gestuurd.
Gómez stuitte met een kopbal nog op doelman Robin Olsen, maar diep in de blessuretijd krulde Kroos vanaf de linkerkant van het strafschopgebied een vrije trap wel langs de Zweedse keeper in de hoek: 2-1.