Primera ronda | |||
| Grupo 1 | |||
| Inglaterra | 0 | 0 | Uruguay |
| 11 de Julio / Wembley Stadium / Árbitro: Istvan Zsolt | |||
| Francia | 1 | 1 | México |
| 13 de Julio / Wembley Stadium / Árbitro: Menachem Ashkenazi | |||
| Uruguay | 2 | 1 | Francia |
| 15 de Julio / White City Stadium / Árbitro: Karol Galba | |||
| Inglaterra | 2 | 0 | México |
| 16 de Julio / Wembley Stadium / Árbitro: Concetto Lo Bello | |||
| México | 0 | 0 | Uruguay |
| 19 de Julio / Wembley Stadium / Árbitro: Bertil Loow | |||
| Inglaterra | 2 | 0 | Francia |
| 20 de Julio / Wembley Stadium / Árbitro: Arturo Yamasaki | |||
| Grupo 2 | |||
| Alemania Occidental | 5 | 0 | Suiza |
| 12 de Julio / Hillsborough Stadium / Árbitro: Hugh Phillips | |||
| Argentina | 2 | 1 | España |
| 13 de Julio / Villa Park / Árbitro: Dimiter Rumentchev | |||
| España | 2 | 1 | Suiza |
| 15 de Julio / Hillsborough Stadium / Árbitro: Tofik Bakhramov | |||
| Argentina | 0 | 0 | Alemania Occidental |
| 16 de Julio / Villa Park / Árbitro: Konstantin Zecevic | |||
| Argentina | 2 | 0 | Suiza |
| 19 de Julio / Hillsborough Stadium / Árbitro: Joaquim Campos | |||
| Alemania Occidental | 2 | 1 | España |
| 20 de Julio / Villa Park / Árbitro: Armando Marques | |||
| Grupo 3 | |||
| Brasil | 2 | 0 | Bulgaria |
| 12 de Julio / Goodison Park / Árbitro: Kurt Tschenscher | |||
| Portugal | 3 | 1 | Hungría |
| 13 de Julio / Old Trafford / Árbitro: Leo Callaghan | |||
| Hungría | 3 | 1 | Brasil |
| 15 de Julio / Goodison Park / Árbitro: Ken Dagnall | |||
| Portugal | 3 | 0 | Bulgaria |
| 16 de Julio / Old Trafford / Árbitro: Jose Maria Codesal | |||
| Portugal | 3 | 1 | Brasil |
| 19 de Julio / Goodison Park / Árbitro: George McCabe | |||
| Hungría | 3 | 1 | Bulgaria |
| 20 de Julio / Old Trafford / Árbitro: Roberto Goicoechea | |||
| Grupo 4 | |||
| Unión Soviética | 3 | 0 | Corea del Norte |
| 12 de Julio / Ayresome Park / Árbitro: Juan Gardeazabal Garay | |||
| Italia | 2 | 0 | Chile |
| 13 de Julio / Roker Park / Árbitro: Gottfried Dienst | |||
| Chile | 1 | 1 | Corea del Norte |
| 15 de Julio / Ayresome Park / Árbitro: Ali Kandil | |||
| Unión Soviética | 1 | 0 | Italia |
| 16 de Julio / Roker Park / Árbitro: Rudolf Kreitlein | |||
| Corea del Norte | 1 | 0 | Italia |
| 19 de Julio / Ayresome Park / Árbitro: Pierre Schwinte | |||
| Unión Soviética | 2 | 1 | Chile |
| 20 de Julio / Roker Park / Árbitro: John Adair | |||
Cuartos de final | |||
| Portugal | 5 | 3 | Corea del Norte |
| 23 de Julio / Goodison Park / Árbitro: Menachem Ashkenazi | |||
| Alemania Occidental | 4 | 0 | Uruguay |
| 23 de Julio / Hillsborough Stadium / Árbitro: Jim Finney | |||
| Unión Soviética | 2 | 1 | Hungría |
| 23 de Julio / Roker Park / Árbitro: Juan Gardeazabal Garay | |||
| Inglaterra | 1 | 0 | Argentina |
| 23 de Julio / Wembley Stadium / Árbitro: Rudolf Kreitlein | |||
Semifinal | |||
| Alemania Occidental | 2 | 1 | Unión Soviética |
| 25 de Julio / Goodison Park / Árbitro: Concetto Lo Bello | |||
| Inglaterra | 2 | 1 | Portugal |
| 26 de Julio / Wembley Stadium / Árbitro: Pierre Schwinte | |||
Tercer puesto | |||
| Portugal | 2 | 1 | Unión Soviética |
| 26 de Julio / Wembley Stadium / Árbitro: Ken Dagnall | |||
Final | |||
| Inglaterra | 4 | 2 | Alemania Occidental |
|
Tiempo extra 30 de Julio / Wembley Stadium / Árbitro: Gottfried Dienst |
|||