Primera ronda | |||
| Grupo 1 | |||
| Alemania Occidental | 3 | 1 | Argentina |
| 08 de Junio / Malmo Stadion / Árbitro: Leafe | |||
| Irlanda del Norte | 1 | 0 | Checoslovaquia |
| 08 de Junio / Orjans Vall / Árbitro: Seipelt | |||
| Argentina | 3 | 1 | Irlanda del Norte |
| 11 de Junio / Orjans Vall / Árbitro: Ahlner | |||
| Alemania Occidental | 2 | 2 | Checoslovaquia |
| 11 de Junio / Olympiastadion / Árbitro: Ellis | |||
| Alemania Occidental | 2 | 2 | Irlanda del Norte |
| 15 de Junio / Malmo Stadion / Árbitro: Campos | |||
| Checoslovaquia | 6 | 1 | Argentina |
| 15 de Junio / Olympiastadion / Árbitro: Ellis | |||
| Irlanda del Norte | 2 | 1 | Checoslovaquia |
| 17 de Junio / Malmo Stadion / Árbitro: Guigue | |||
| Grupo 2 | |||
| Francia | 7 | 3 | Paraguay |
| 08 de Junio / Idrottsparken / Árbitro: Gardeazabal | |||
| Yugoslavia | 1 | 1 | Escocia |
| 08 de Junio / Arosvallen / Árbitro: Wyssling | |||
| Yugoslavia | 3 | 2 | Francia |
| 11 de Junio / Arosvallen / Árbitro: Benjamin Griffiths | |||
| Paraguay | 3 | 2 | Escocia |
| 11 de Junio / Idrottsparken / Árbitro: Orlandini | |||
| Francia | 2 | 1 | Escocia |
| 15 de Junio / Eyravallen / Árbitro: Brozzi | |||
| Paraguay | 3 | 3 | Yugoslavia |
| 15 de Junio / Tunavallen / Árbitro: Macko | |||
| Grupo 3 | |||
| Suecia | 3 | 0 | México |
| 08 de Junio / Rasunda Stadium / Árbitro: Latychev | |||
| Hungría | 1 | 1 | Gales |
| 08 de Junio / Jernvallen / Árbitro: Codesal | |||
| México | 1 | 1 | Gales |
| 11 de Junio / Rasunda Stadium / Árbitro: Lemesic | |||
| Suecia | 2 | 1 | Hungría |
| 12 de Junio / Rasunda Stadium / Árbitro: Mowat | |||
| Suecia | 0 | 0 | Gales |
| 15 de Junio / Rasunda Stadium / Árbitro: Van Nuffel | |||
| Hungría | 4 | 0 | México |
| 15 de Junio / Jernvallen / Árbitro: Eriksson | |||
| Grupo 4 | |||
| Brasil | 3 | 0 | Austria |
| 08 de Junio / Rimnersvallen / Árbitro: Guigue | |||
| Unión Soviética | 2 | 2 | Inglaterra |
| 08 de Junio / Ullevi / Árbitro: Zsolt | |||
| Brasil | 0 | 0 | Inglaterra |
| 11 de Junio / Ullevi / Árbitro: Dusch | |||
| Unión Soviética | 2 | 0 | Austria |
| 11 de Junio / Ryavallen / Árbitro: Jorgensen | |||
| Inglaterra | 2 | 2 | Austria |
| 15 de Junio / Ryavallen / Árbitro: Bronkhorst | |||
| Brasil | 2 | 0 | Unión Soviética |
| 15 de Junio / Ullevi / Árbitro: Guigue | |||
| Unión Soviética | 1 | 0 | Inglaterra |
| 17 de Junio / Ullevi / Árbitro: Dusch | |||
Cuartos de final | |||
| Francia | 4 | 0 | Irlanda del Norte |
| 19 de Junio / Idrottsparken / Árbitro: Gardeazabal | |||
| Suecia | 2 | 0 | Unión Soviética |
| 19 de Junio / Rasunda Stadium / Árbitro: Leafe | |||
| Brasil | 1 | 0 | Gales |
| 19 de Junio / Ullevi / Árbitro: Seipelt | |||
| Alemania Occidental | 1 | 0 | Yugoslavia |
| 19 de Junio / Malmo Stadion / Árbitro: Wyssling | |||
Semifinal | |||
| Francia | 2 | 5 | Brasil |
| 24 de Junio / Rasunda Stadium / Árbitro: | |||
| Alemania Occidental | 1 | 3 | Suecia |
| 24 de Junio / Ullevi / Árbitro: Zsolt | |||
Tercer puesto | |||
| Alemania Occidental | 3 | 6 | Francia |
| 28 de Junio / Ullevi / Árbitro: Brozzi | |||
Final | |||
| Suecia | 2 | 5 | Brasil |
| 29 de Junio / Rasunda Stadium / Árbitro: Maurice Guigue | |||