Switzerland beat Canada 2-1 in Vancouver on Wednesday to finish top of World Cup Group B, while the co-hosts reached the last 32 for the first time.
Ruben Vargas and Johan Manzambi scored in the second half to move Switzerland to seven points. Promise, David pulled one back for Canada in the final 15 minutes.
Canada finished second in the group, three points behind Switzerland. The co-hosts will face the Group A runner-up on Sunday in Los Angeles.
Before the 2026 World Cup, Canada had never won a match at the finals. Its second-place finish secured the country’s first knockout-round appearance.
The match stayed goalless at half-time after Switzerland’s Breel Embolo missed an early chance and Canada’s Cyle Larin tested goalkeeper Gregor Kobel. Ali Ahmed also forced Kobel into a save before the break.
Switzerland took the lead seconds after the restart when Manzambi crossed from the right, and Vargas finished at the back post. Manzambi added the second in the 57th minute after a hold-up play by Embolo.
Read: Croatia Beat Panama 1-0 in World Cup Group L
Canada coach Jesse Marsch made three substitutions as his team chased the match. Promise David then turned in Nathan Saliba’s cross to set up a tense finish.
Switzerland held on under late set-piece pressure and will face one of the best third-placed teams next week. Bosnia-Herzegovina beat Qatar 3-1 to finish third in Group B with four points.