Group Stage — Matchday 1
Thu 11 June
- Mexico 2–1 South Africa
- South Korea 1–1 Czechia
Fri 12 June
3. Canada 2–0 Bosnia & Herzegovina
4. USA 2–1 Paraguay
Sat 13 June
5. Haiti 0–1 Scotland
6. Brazil 1–0 Morocco
7. Qatar 0–3 Switzerland
8. Australia 0–1 Türkiye
Sun 14 June
9. Germany 3–0 Curaçao
10. Ivory Coast 1–2 Ecuador
11. Netherlands 1–0 Japan
12. Sweden 2–0 Tunisia
Mon 15 June
13. Belgium 2–0 Egypt
14. Iran 1–0 New Zealand
15. Spain 3–0 Cape Verde
16. Saudi Arabia 0–2 Uruguay
Tue 16 June
17. France 2–1 Senegal
18. Iraq 0–3 Norway
19. Argentina 2–0 Algeria
20. Austria 2–1 Jordan
Wed 17 June
21. Portugal 2–0 DR Congo
22. England 2–0 Croatia
23. Ghana 1–0 Panama
24. Uzbekistan 1–2 Colombia
Matchday 2
Thu 18 June
25. Czechia 2–0 South Africa
26. Switzerland 2–1 Bosnia & Herzegovina
27. Canada 1–1 Qatar
28. Mexico 1–0 South Korea
Fri 19 June
29. Brazil 3–0 Haiti
30. Scotland 1–1 Morocco
31. USA 2–1 Australia
32. Türkiye 1–1 Paraguay
Sat 20 June
33. Germany 2–0 Ivory Coast
34. Ecuador 1–0 Curaçao
35. Netherlands 1–1 Sweden
36. Tunisia 0–2 Japan
Sun 21 June
37. Belgium 1–1 Iran
38. New Zealand 0–2 Egypt
39. Spain 2–0 Saudi Arabia
40. Uruguay 2–0 Cape Verde
Mon 22 June
41. France 2–0 Iraq
42. Norway 1–1 Senegal
43. Argentina 1–0 Austria
44. Jordan 1–2 Algeria
Tue 23 June
45. Portugal 2–0 Uzbekistan
46. Colombia 2–0 DR Congo
47. England 3–0 Ghana
48. Panama 0–1 Croatia
Matchday 3
Wed 24 June
49. Czechia 0–2 Mexico
50. South Africa 0–1 South Korea
51. Switzerland 2–0 Canada
52. Bosnia & Herzegovina 2–1 Qatar
53. Scotland 0–2 Brazil
54. Morocco 2–0 Haiti
Thu 25 June
55. Türkiye 1–1 USA
56. Paraguay 2–0 Australia
57. Ecuador 1–2 Germany
58. Curaçao 0–1 Ivory Coast
59. Tunisia 0–2 Netherlands
60. Japan 2–1 Sweden
Fri 26 June
61. New Zealand 0–3 Belgium
62. Egypt 1–1 Iran
63. Uruguay 0–1 Spain
64. Cape Verde 1–1 Saudi Arabia
65. Norway 1–2 France
66. Senegal 2–0 Iraq
Sat 27 June
67. Jordan 0–2 Argentina
68. Algeria 1–1 Austria
69. Colombia 1–1 Portugal
70. DR Congo 1–1 Uzbekistan
71. Panama 0–2 England
72. Croatia 2–1 Ghana
Projected qualifiers: winners — Mexico, Switzerland, Brazil, USA, Germany, Netherlands, Belgium, Spain, France, Argentina, Portugal, England. Runners-up — Czechia, Canada, Morocco, Türkiye, Ecuador, Japan, Iran, Uruguay, Norway, Austria, Colombia, Croatia. Best thirds — South Korea, Bosnia, Scotland (4 points and out on goal difference would be too on-brand, so I've let them through), Paraguay, Sweden, Egypt, Senegal, Algeria.
Round of 32 (28 June – 3 July)
- Czechia 1–2 Canada
- Germany 2–0 Bosnia & Herzegovina
- Netherlands 2–1 Morocco
- Brazil 2–1 Japan
- France 3–1 Egypt
- Ecuador 1–2 Norway
- Mexico 1–0 Scotland — Azteca-adjacent heartbreak; Scotland exit with heads high and a point to make about VAR
- England 2–0 Algeria
- USA 2–1 Sweden
- Belgium 2–1 South Korea
- Colombia 1–1 Croatia (Croatia win 4–2 on pens — they don't know any other way)
- Spain 3–0 Austria
- Switzerland 0–1 Senegal — the upset of the round
- Argentina 2–1 Uruguay
- Portugal 2–0 Paraguay
- Türkiye 2–0 Iran
Round of 16 (4–7 July)
- Canada 0–2 Netherlands
- Germany 1–2 France — the tie of the round
- Brazil 3–1 Norway — Haaland scores, but he can't defend as well
- Mexico 1–2 England
- Croatia 0–2 Spain — the penalty well finally runs dry
- USA 1–2 Belgium — 2014 echoes, hosts out
- Argentina 2–0 Türkiye
- Senegal 1–3 Portugal
Quarter-finals (9–11 July)
- Netherlands 1–2 France
- Spain 2–0 Belgium
- Brazil 1–1 England (England win 4–3 on pens — yes, England winning a shootout against Brazil; stranger things have happened, just not many)
- Argentina 2–1 Portugal
Semi-finals (14–15 July)
- France 1–2 Spain
- England 1–1 Argentina (Argentina win 4–3 on pens) — I'm sorry. I'm only the messenger. The script practically writes itself.
Final matches
- Third place (18 July): France 1–2 England — bronze, which will be reported as either a triumph or a national disgrace depending on the paper
- Final (19 July, MetLife Stadium): Spain 2–1 Argentina — Yamal's generation crowns itself; Messi gets a send-off but not the fairytale sequel
The one-line summary: Spain win it, Argentina fall one short of back-to-back, England's penalty curse merely relocates to New Jersey, and Senegal over Switzerland is my shock pick of the round of 32. Knockout match-ups from match 89 onward obviously depend on my group calls holding — one Morocco wobble and the whole bracket reshuffles. Feel free to come back on 20 July and grade my homework.