Sverige kom till den avslutande gruppspelsmatchen mot Polen med fyra poäng i bagaget från de inledande matcherna mot Spanien och Slovakien, och med vetskapen om att en trepoängare skulle räcka för gruppseger.
Förbundskapten Janne Andersson valde inför matchen att göra en förändring i startelvan från de två tidigare matcherna, då Marcus Berg sattes på bänken till förmån för Robin Quaison.
Sverige fick en drömstart på matchen när Emil Forsberg redan i den andra minuten hittade in i straffområdet och fick till ett avslut som letade sig in bakom Wojciech Szczęsny i Polens mål.
I den 17:e minuten var Polen ytterst nära att kvittera. Robert Lewandowski fick till en nick efter en hörna som gick i ribban, och på returen nickade Bayern München-stjärnan i ribban igen. Ribbreturen studsade ut i straffområdet igen men på något sätt lyckades Blågult freda sitt mål.
- Hur är det möjligt?, utbrast expert Hasse Backe i TV4:s studio.
Allteftersom den första halvleken fortskred tog Polen över spelet mer och mer, och på stopptid tvingades Robin Olsen till en vass räddning när Piotr Zielinski avlossade ett tungt skott.
Polen inledde även den andra halvleken med att skapa ett par chanser, men Olsen stod för flera bra parader.
Istället var det Sverige som skulle öka ledningen. Efter ett fint förarbete av inbytte Dejan Kulusevski sköt Emil Forsberg 2-0 - hans andra mål i matchen och tredje i turneringen.
Bara två minuter efter Sveriges 2-0-mål skulle dock Polen reducera efter en drömträff av Robert Lewandowski.
I den 65:e minuten hade Polen på nytt en boll i mål, men målet dömdes, till synes korrekt, bort för offside.
Polens 2-2-mål skulle dock komma. I minut 84 letade sig bollen fram till Lewandowski i straffområdet, och ensam med Olsen gjorde han inget misstag när han satte 2-2.
Polen var piskat att vinna för att gå vidare och låg på för ett ledningsmål – men istället var det Sverige som skulle avgöra på stopptid. I den fjärde stopptidsminuten av fem fick Viktor Claesson en passning av Dejan Kulusevski, och fri med Szczęsny satte Krasnodar-mittfältaren bollen i mål.
Claessons mål blev matchens sista, och Sverige vann matchen med 3-2.
- Det var en berg-och-dalbana känslomässigt. Vi hade 2-0 och det kändes hur lugnt som helst. Sedan kom de in i matchen och fick in tvåan, då var man på botten, men sedan fick vi 3-2-målet. Det är otroligt skönt, säger Viktor Claesson efter matchen.
Segern gör att Sverige vinner grupp E på sju poäng, framför Spanien som blir tvåa på fem poäng efter att ha krossat Slovakien i Sevilla. Sverige kommer att spela sin åttondelsfinal på Hampden Park i Glasgow på tisdag klockan 21:00, och där kommer Ukraina med allra största sannolikhet (över 99 procent) stå för motståndet. Ukraina kom trea i sin grupp på tre poäng efter Nederländerna och Österrike.
- Det är bra inför självförtroendet i fortsättningen. Vi har vunnit två och har spelat en lika, och får en dag extra vila och lite lättare motstånd i åttondelsfinalen, säger Claesson.
Sveriges åttondelsfinal på tisdag sänds i TV4 och C More, och kan ses här.
Startelvor:
Sverige: Robin Olsen - Mikael Lustig (Emil Krafth 68'), Victor Nilsson Lindelöf, Marcus Danielson, Ludwig Augustinsson - Sebastian Larsson, Albin Ekdal, Kristoffer Olsson, Emil Forsberg (Viktor Claesson 77') - Alexander Isak (Marcus Berg 68'), Robin Quaison (Dejan Kulusevski 55').
Polen: Wojciech Szczęsny - Bartosz Bereszynski, Kamil Glik, Jan Bednarek - Kamil Józwiak, Grzegorz Krychowiak, Mateusz Klich, Tymoteusz Puchacz - Karol Swiderski, Robert Lewandowski, Piotr Zielinski.