Till slut var det Kanadas 17-årige supertalang Connor Bedard som klev fram i förlängningen och tog ett pressat Kanada till semifinal med sitt 4–3-mål.
Det var också Connor Bedard som inledde Kanadas målskytte sex minuter in i första perioden och lagen gick till periodpaus med en 1–0-ledning för hemmalaget.
I andra perioden gjorde både Slovakien och Kanada två mål var och i tredje kvitterade Slovakien till 3–3 och tog därmed matchen till förlängning.
I förlängningens sjätte minut körde Connor Bedars på egen hand genom det slovakiska försvaret och sköt sedan in ett backhandskott bakom målvakten Adam Gajan.
I seminfinalen ställs Kanada mot grannarna USA, som tidigare på kvällen tog sig vidare efter att ha utklassat Tyskland i kvartsfinalen med 11–1.
Sverige, som vann sin kvartsfinal mot Finland med 3–2 efter en sen vändning på måndagskvällen, ställs i semifinalen mot Tjeckien.
Lagen har redan mött varandra i årets upplaga av juniormästerskapet – då i gruppspelet. Juniorkronorna vann då med 3–2 efter förlängning.
– Vi vet att det är ett väldigt tufft motstånd. När vi mötte dem senast så drog vi det längsta strået och jag tror att det kommer bli en lika jämn match även den här gången, sade Sveriges förbundskapten Magnus Hävelid till TT.