Match ends, Canada 1, Morocco 2.
Morocco edged past Canada to top Group F and reach the World Cup knockout stage for the first time in 36 years.
The Atlas Lions, whose previous trip to the last 16 came in 1986, finished above 2018 finalists Croatia, while Belgium – ranked second in the world – are out after finishing third in the group.
A tough test awaits in the next round as they come up against 2010 champions Spain on Tuesday (15:00 GMT).
Morocco went ahead after just four minutes courtesy of a goalkeeping howler from Milan Borjan.
The Canada keeper sprinted out of his goal but passed the ball straight to Hakim Ziyech, who lofted a cool finish into an open net from 30 yards.
The north African side doubled their advantage through Youssef En-Nesyri’s well-taken goal as he controlled Achraf Hakimi’s superb pass before firing in.
But sloppy defending gave Canada a route back into the game when West Ham’s Nayef Aguerd stuck a boot out to divert the ball into his own net – the 100th goal scored at this World Cup.
Knowing if they avoided defeat they would go through, Morocco were happy to sit back and soak up pressure in the second period.
But Atiba Hutchinson came close with a header that rattled the crossbar and dropped down onto the line as Canada’s campaign ended without a point.
Morocco march on
Morocco didn’t win a game at the last World Cup in Russia but have turned on the style this time, becoming the second African team after Senegal to make it through.
Cameroon play Brazil (19:00 GMT) and Ghana face a grudge match against Uruguay in the final round of group fixtures on Friday to determine whether they can make it a total of four from the continent.
Morocco manager Walid Regragui has a team which is full of players with big game experience.
Chelsea’s Ziyech, who has been off the boil for his club, has found form for his country and grabbed the opener, which was gifted to him by Borjan.
Hakimi and En-Nesyri, a regular scorer in the Champions League, combined for the second as the Sevilla player latched on to the Paris St-Germain full-back’s pin-point pass before smashing in.
He could have had a second but a stunning volley was ruled out for offside.
Before the game, Morocco had kept a clean sheet in six matches, five of them under Regragui, but that record went when Aguerd poked into his own net before the break.
Canada probed for a way back in the second half and although Hutchinson came close with a header which hit the woodwork, they failed to produce a shot on target in the match.
Star man Alphonso Davies stabbed a chance wide, meaning his side have now lost all six of their World Cup games, a feat only achieved previously El Salvador.

Player of the match
ZiyechHakim Ziyech
Canada
-
Squad number24Player nameWotherspoon
Average rating6.24
-
Squad number19Player nameDavies
Average rating6.19
-
Squad number22Player nameLaryea
Average rating6.05
-
Squad number13Player nameHutchinson
Average rating5.85
-
Squad number11Player nameBuchanan
Average rating5.82
-
Squad number20Player nameDavid
Average rating5.76
-
Squad number15Player nameKoné
Average rating5.74
-
Squad number2Player nameJohnston
Average rating5.50
-
Squad number4Player nameMiller
Average rating5.43
-
Squad number21Player nameOsorio
Average rating5.40
-
Squad number10Player nameHoilett
Average rating5.39
-
Squad number5Player nameVitória
Average rating5.33
-
Squad number14Player nameKaye
Average rating5.30
-
Squad number3Player nameAdekugbe
Average rating5.26
-
Squad number17Player nameLarin
Average rating5.24
-
Squad number18Player nameBorjan
Average rating4.53
Morocco
-
Squad number7Player nameZiyech
Average rating8.26
-
Squad number19Player nameEn-Nesyri
Average rating8.16
-
Squad number5Player nameAguerd
Average rating8.08
-
Squad number11Player nameSabiri
Average rating8.03
-
Squad number1Player nameBono
Average rating8.03
-
Squad number2Player nameHakimi
Average rating8.00
-
Squad number6Player nameSaïss
Average rating7.97
-
Squad number8Player nameOunahi
Average rating7.96
-
Squad number17Player nameBoufal
Average rating7.89
-
Squad number3Player nameMazraoui
Average rating7.87
-
Squad number14Player nameAboukhlal
Average rating7.83
-
Squad number15Player nameAmallah
Average rating7.79
-
Squad number9Player nameHamdallah
Average rating7.73
-
Squad number4Player nameS Amrabat
Average rating7.72
-
Squad number18Player nameEl Yamiq
Average rating7.52
-
Squad number26Player nameJabrane
Average rating7.26
Line-ups
Canada
Formation 4-4-1-1
- 18Borjan
- 2Johnston
- 5VitóriaBooked at 84mins
- 4Miller
- 3AdekugbeBooked at 45minsSubstituted forKonéat 61′minutes
- 19Davies
- 21OsorioBooked at 26minsSubstituted forLaryeaat 65′minutes
- 14KayeSubstituted forHutchinsonat 60′minutes
- 11Buchanan
- 10HoilettBooked at 7minsSubstituted forWotherspoonat 76′minutes
- 17LarinSubstituted forDavidat 60′minutes
Substitutes
- 1St. Clair
- 6Piette
- 8Fraser
- 9Cavallini
- 12Ugbo
- 13Hutchinson
- 15Koné
- 16Pantemis
- 20David
- 22Laryea
- 23Millar
- 24Wotherspoon
- 25Cornelius
- 26Waterman
Morocco
Formation 4-3-3
- 1Bono
- 2HakimiSubstituted forJabraneat 85′minutes
- 5Aguerd
- 6Saïss
- 3Mazraoui
- 8OunahiSubstituted forEl Yamiqat 77′minutes
- 4S Amrabat
- 11SabiriSubstituted forAmallahat 65′minutes
- 7ZiyechSubstituted forHamdallahat 76′minutes
- 19En-Nesyri
- 17BoufalSubstituted forAboukhlalat 65′minutes
Substitutes
- 9Hamdallah
- 10Zaroury
- 12Mohamedi
- 13Chair
- 14Aboukhlal
- 15Amallah
- 16Ezzalzouli
- 18El Yamiq
- 20Dari
- 21Cheddira
- 22Tagnaouti
- 23El Khannouss
- 24Benoun
- 25Attiat-Allah
- 26Jabrane
- Referee:
- Raphael Claus
- Attendance:
- 43,102
Match Stats
Live Text
-
-
Second Half ends, Canada 1, Morocco 2.
-
Offside, Canada. Milan Borjan tries a through ball, but Richie Laryea is caught offside.
-
Corner, Canada. Conceded by Youssef En-Nesyri.
-
Jonathan David (Canada) wins a free kick in the attacking half.
-
Foul by Abderrazak Hamdallah (Morocco).
-
Ismaël Koné (Canada) wins a free kick in the defensive half.
-
Foul by Abderrazak Hamdallah (Morocco).
-
Foul by Tajon Buchanan (Canada).
-
Youssef En-Nesyri (Morocco) wins a free kick in the defensive half.
-
Atiba Hutchinson (Canada) wins a free kick in the attacking half.
-
Foul by Sofyan Amrabat (Morocco).
-
Richie Laryea (Canada) wins a free kick in the defensive half.
-
Foul by Zakaria Aboukhlal (Morocco).
-
Substitution, Morocco. Yahya Jabrane replaces Achraf Hakimi.
-
Steven Vitória (Canada) is shown the yellow card for a bad foul.
-
Foul by Steven Vitória (Canada).
-
Abderrazak Hamdallah (Morocco) wins a free kick on the right wing.
-
Foul by Tajon Buchanan (Canada).
-
Jawad El Yamiq (Morocco) wins a free kick in the defensive half.
Get the latest results and goal notifications for any team at the Fifa World Cup by downloading the BBC Sport app: Apple – Android – Amazon
Get your daily dose of Fifa World Cup reaction, debate & analysis with World Cup Daily on BBC Sounds