Atrankos etape dalyvavo 16 komandų, patekusių į turnyro grupių etapą. Rungtynės vyko keturiuose etapuose, o kiekviename etape iškrito pusė į tą etapą patekusių komandų. Iš eilės vyko šie etapai: 16-asis etapas, ketvirtfinalis, pusfinalis, finalas. Taip pat vyko atkrintamosios varžybos, kuriose buvo sprendžiama dėl trečiosios/ketvirtosios vietos. Kiekvienose atkrintamųjų varžybų rungtynėse po bet kokių lygiųjų 90 minučių buvo žaidžiamas 30 minučių pratęsimas; jei rezultatas vis dar būdavo lygus, būdavo mušami baudiniai (ne mažiau kaip po penkis baudinius, o prireikus ir daugiau), kad būtų nustatyta, kas pateks į kitą etapą. Rezultatai po pratęsimo žymimi (aet), o baudinių serijos - (p).
| 16 raundas | | Ketvirtfinaliai | | Pusfinaliai | | Galutinis |
| | | | | | | | | | | | | | |
| Birželio 24 d. - Turinas | | | | | | | | | |
|
| Brazilija | 0 |
| Birželio 30 d. - Florencija |
| Argentina | 1 | |
| Argentina (p) | 0 (3) |
| Birželio 26 d. - Verona |
| | Jugoslavija | 0 (2) | |
| Ispanija | 1 |
| | Liepos 3 d. - Neapolis |
| Jugoslavija (aet) | 2 | |
| Argentina (p) | 1 (4) |
| Birželio 25 d. - Genuja |
| | Italija | 1 (3) | |
| Airija (p) | 0 (5) |
| Birželio 30 d. - Roma | |
| Rumunija | 0 (4) | |
| Airija | 0 |
| Birželio 25 d. - Roma |
| | Italija | 1 | |
| Italija | 2 |
| | Liepos 8 d. - Roma |
| Urugvajus | 0 | |
| Argentina | 0 |
| Birželio 23 d. - Baris |
| | Vakarų Vokietija | 1 |
| Čekoslovakija | 4 |
| Liepos 1 d. - Milanas | |
| Kosta Rika | 1 | |
| Čekoslovakija | 0 |
| Birželio 24 d. - Milanas |
| | Vakarų Vokietija | 1 | |
| Vakarų Vokietija | 2 |
| | Liepos 4 d. - Turinas |
| Nyderlandai | 1 | |
| Vakarų Vokietija (p) | 1 (4) |
| Birželio 23 d. - Neapolis |
| | Anglija | 1 (3) | | Trečioji vieta |
| Kamerūnas (aet) | 2 |
| Liepos 1 d. - Neapolis | | Liepos 7 d. - Baris |
| Kolumbija | 1 | |
| Kamerūnas | 2 | Italija | 2 |
| Birželio 26 d. - Bolonija |
| | Anglija (aet) | 3 | | Anglija | 1 |
| Anglija (aet) | 1 |
| | |
| Belgija | 0 | |
|
16 raundas
Dvejose rungtynėse - Argentinos ir Brazilijos bei Italijos ir Urugvajaus - susitiko buvusios čempionės, o Vakarų Vokietija susitiko su Nyderlandais 1974 m. pasaulio futbolo čempionato finalo revanšo rungtynėse.
Visoje Pietų Amerikoje vykusias rungtynes Argentinai laimėjo Claudio Caniggia įvartis likus 10 minučių iki rungtynių pabaigos po Diego Maradonos prasiveržimo pro brazilų gynybą ir puikaus vartininko Sergio Goycochea pasirodymo. Vėliau paaiškėjo, kad per pertrauką Maradona ir Ricardo Giusti pasiūlė Branco vandens su raminamaisiais vaistais, kad antrojoje rungtynių pusėje jis sulėtėtų. Iš pradžių diskredituota spaudos, Branco po metų viešai įrodė, kad buvo teisus, kai Maradona prisipažino apie šį epizodą Argentinos televizijos laidoje. Italijos rinktinė antroje rungtynių pusėje pademonstravo gerą žaidimą ir įveikė Urugvajų 2:0, kai dar vieną įvartį įmušė Schillaci, o vieną - Aldo Serena.
Rungtynės tarp Vakarų Vokietijos ir Nyderlandų vyko Milane, o abiejose pusėse žaidė keli žymūs dviejų Milano klubų žaidėjai (vokiečiai Andreas Brehme, Lothar Matthäus ir Jürgen Klinsmann - "Internazionale", o olandai Marco van Basten, Ruud Gullit ir Frank Rijkaard - "Milan"). Po 22 minučių Rudi Völler ir Rijkaard buvo pašalinti iš aikštės, nes po kelių incidentų (įskaitant Rijkaard spjaudymą ant Völler) tarp abiejų žaidėjų Argentinos teisėjas neturėjo kitos išeities, kaip tik juos abu pašalinti. Kai žaidėjai kartu išėjo iš aikštės, Rijkaardas antrą kartą išplūdo Völlerį. Antrosios rungtynių pusės pradžioje Jürgenas Klinsmannas išvedė vakarų vokiečius į priekį, o likus aštuonioms minutėms Andreas Brehme pridėjo antrą įvartį. 89-ąją minutę Ronaldas Koemanas baudos smūgiu į Nyderlandų vartus sumažino rezultatą iki 2:1, tačiau vokiečiai baigė rungtynes ir taip revanšavosi Nyderlandams už iškritimą praėjusiame Europos čempionate.
Tuo tarpu Kamerūno ir Rogerio Millos žygdarbiai tęsėsi rungtynėse su Kolumbija. R. Milla buvo įvestas kaip atsarginis žaidėjas antroje rungtynių pusėje, kai rungtynės vyko be įvarčių, ir galiausiai įpusėjus pridėtam laikui įmušė įvartį. Po trijų minučių jis įmušė antrąjį įvartį, kai Kolumbijos vartininkas René Higuita, būdamas toli nuo savo vartų, atmušė Milla, palikdamas puolėjui laisvam įmušti kamuolį į tuščius vartus. Nors netrukus deficitas buvo sumažintas iki 2:1, Kamerūnas atsilaikė ir tapo pirmąja Afrikos komanda, pasiekusia pasaulio čempionato ketvirtfinalį. Kosta Rika 4:1 įveikė Čekoslovakiją, kuriai Tomáš Skuhravý įmušė antrąjį ir paskutinį turnyro "hat-tricką".
Airijos Respublikos rungtynės su Rumunija po pratęsimo liko be įvarčių, o Airijos rinktinė laimėjo 5:4 po baudinių serijos. Davidas O'Leary realizavo baudinį, kuris užtikrino Airijai vietą ketvirtfinalyje. Taip Airija tapo pirmąja komanda nuo 1938 m. Švedijos laikų, kuri pasaulio futbolo čempionato finalo turnyre pateko į paskutinį aštuonetą, nelaimėjusi nė vienų rungtynių iš eilės. Jugoslavija po pratęsimo 2:1 įveikė Ispaniją, abu jugoslavų įvarčius įmušė Draganas Stojkovičius. Paskutinėse atrankos rungtynėse Anglija sužaidė su Belgija, kai vidurio gynėjas Davidas Plattas sukdamasis iš virpsto nutraukė aklavietę, kai iki baudinių serijos trūko visai nedaug.
| 1997 m. birželio 23 d. 2017 :00 | Kamerūnas  | 2-1 (a.e.t. ) | Kolumbija | Stadio San Paolo, Neapolis |
| Milla 106', 109' | | Redín 115' |
| 1990 m. birželio 23 d.21 :00 | Čekoslovakija  | 4-1 | Kosta Rika | Stadio San Nicola, Baris |
| Skuhravý 12', 63', 82' Kubík 75' | | González 54' |
| 1997 m. birželio 24 d. 2017 :00 | Brazilija .svg.png) | 0-1 | Argentina | Stadio delle Alpi, Turinas |
| | Caniggia 80' |
| 1990 m. birželio 24 d.21 :00 | Vakarų Vokietija  | 2-1 | Nyderlandai | San Siro, Milanas |
| Klinsmann 51' Brehme 82' | | R. Koemanas 89' (baudinys) |
| 1997 m. birželio 25 d. 2017 :00 | Airijos Respublika  | 0-0 (a.e.t. ) | Rumunija | Stadio Luigi Ferraris, Genuja |
| | |
| | Sankcijos | | |
| Sheedy Houghton Townsend Cascarino O'Leary  | 5-4 | Hagi Lupu Rotariu Lupescu Timofte | |
| 1990 m. birželio 25 d.21:00 | Italija  | 2-0 | Urugvajus | Stadio Olimpico, Roma |
| Schillaci 65' Serena 83' | | |
| 1997 m. birželio 26 d. 2017 :00 | Ispanija  | 1-2 (a.e.t. ) | Jugoslavija | Stadio Marc'Antonio Bentegodi, Verona |
| Salinas 83' | | Stojković 78', 92' |
| 1990 m. birželio 26 d.21 :00 | Anglija  | 1-0 (a.e.t. ) | Belgija | Stadio Renato Dall'Ara, Bolonija |
| Platt 119' | | |
Ketvirtfinaliai
Pirmosiose 8 paskutiniųjų rungtynių rungtynėse Argentina ir Jugoslavijos rinktinė, kuriai jau po pusvalandžio buvo sumažinta 10 žaidėjų sudėtis, sužaidė be įvarčių. Šeimininkai į pusfinalį pateko laimėję baudinių seriją 3:2, nepaisant to, kad Maradonos baudinys buvo išgelbėtas. Atrodė, kad antrasis argentiniečių (Pedro Troglio) praleistas įvartis juos eliminuos, kol vartininkas Sergio Goycochea, žaidęs dėl to, kad pirmasis vartininkas Nery Pumpido grupės etape susilaužė koją, išgelbėjo savo komandą, atmušdamas du paskutinius jugoslavų smūgius.
Airijos Respublikai pasaulio čempionato žygį nutraukė vienintelis Schillaci įvartis pirmoje ketvirtfinalio su šeimininke Italija pusėje. Vakarų Vokietija įveikė Čekoslovakiją 25-ąją minutę Lothar Matthäus baudiniu.
Labiausiai intriguojančios ketvirtfinalio rungtynės vyko tarp Anglijos ir Kamerūno. Tai buvo vienintelės ketvirtfinalio rungtynės, kuriose buvo įmuštas daugiau nei vienas įvartis. Nepaisant Kamerūno didvyriškų veiksmų turnyro pradžioje, Davidas Plattas 25-ąją minutę išvedė Angliją į priekį. Įpusėjus kėliniui į aikštę buvo išvestas Milla. Antroje rungtynių pusėje per penkias minutes žaidimas apsivertė aukštyn kojomis: iš pradžių Kamerūnui buvo skirtas baudinys, iš kurio Emmanuelis Kunde pelnė išlyginamąjį įvartį, o 65-ąją minutę Eugene Ekeke išvedė Kamerūną į priekį. Kamerūnas per aštuonias minutes pateko į pusfinalį, bet po to buvo skirtas baudinys, kurį realizavo Gary Linekeris. Įpusėjus pridėtam laikui Anglija gavo dar vieną baudinį ir G. Linekeris vėl įmušė įvartį. Anglija pirmą kartą per 24 metus pateko į pusfinalį.
| 1997 m. birželio 30 d. 2017 :00 | Argentina  | 0-0 (a.e.t. ) | Jugoslavija | Stadio Comunale, Florencija |
| | |
| | Sankcijos | | |
| Serrizuela  Burruchaga Maradona Troglio Dezotti  | 3-2 | Stojković Prosinečki Savićević Brnović Hadžibegić | |
| 1990 m. birželio 30 d.21 :00 | Airijos Respublika  | 0-1 | Italija | Stadio Olimpico, Roma |
| | Schillaci 38' |
| 1997 m. liepos 1 d. 2017 :00 | Čekoslovakija  | 0-1 | Vakarų Vokietija | San Siro, Milanas |
| | Matthäus 25' (pen. ) |
| 1990 m. liepos 1 d.21 :00 | Kamerūnas  | 2-3 (a.e.t. ) | Anglija | Stadio San Paolo, Neapolis |
| Kundé 61' (pen. ) Ekéké 65' | | Platt 25' Linekeris 83' (baudinys), 105' (baudinys) |
Pusfinaliai
Pirmajame pusfinalyje Neapolyje susitiko šeimininkė Italija ir pasaulio čempionė Argentina. 17-ąją minutę "Toto" Schillaci dar kartą įmušė įvartį ir išvedė Italiją į priekį, tačiau antrojo kėlinio viduryje Claudio Cannigia išlygino rezultatą ir nutraukė Walterio Zengos švarių įvarčių seriją viso turnyro metu. Daugiau įvarčių nebuvo nei per 90 minučių, nei per pratęsimą, nors Maradona (tuo metu žaidęs Neapolio "Serie A" komandoje) ir demonstravo stebuklingus sugebėjimus, tačiau buvo pašalintas iš aikštės: Ricardo Giusti iš Argentinos 13-ąją papildomo laiko minutę buvo parodyta raudona kortelė. Argentinos rinktinė laimėjo baudinių seriją 4:3 po didvyriškų Goycochea veiksmų.
Pusfinalio rungtynės tarp Vakarų Vokietijos ir Anglijos "Juventus" namų stadione Turine įpusėjus rungtynėms baigėsi be įvarčių. Tada 60-ąją minutę Andreas Brehme smūgį į savo vartus nukreipė Paulas Parkeris. Anglija išlygino rezultatą likus 10 minučių, įvartį pelnė Gary Linekeris. Rungtynės baigėsi 1:1. Per pridėtą laiką buvo daugiau progų, o Klinsmannas buvo kaltas dėl dviejų akivaizdžių praleistų įvarčių, kai tuo tarpu abi pusės pataikė po įvartį. Dar vienas Platto įvartis į Anglijos vartus nebuvo įskaitytas dėl nuošalės. Rungtynės vyko baudinių serijoje ir Vakarų Vokietija laimėjo 4:3.
| 1990 m. liepos 3 d.20 :00 | Argentina  | 1-1 (a.e.t. ) | Italija | Stadio San Paolo, Neapolis |
| Caniggia 67' | | Schillaci 17' |
| | Sankcijos | | |
| Serrizuela  Burruchaga Olarticoechea  Maradona  | 4-3 | Baresi Baggio De Agostini Donadoni Serena | |
| 1990 m. liepos 4 d.20 :00 | Vakarų Vokietija  | 1-1 (a.e.t. ) | Anglija | Stadio delle Alpi, Turinas |
| Brehme 60' | | Linekeris 80' |
| | Sankcijos | | |
| Brehme Matthäus Riedle Thon  | 4-3 | Linekeris Beardsley Platt Pearce Waddle | |
Trečiosios vietos rungtynės
Per 15 minučių buvo pelnyti trys įvarčiai. Roberto Baggio atidarė įvartį po retos Anglijos vartininko Peterio Shiltono, žaidusio paskutines rungtynes prieš tarptautinę karjerą, klaidos, kuri suteikė paprastą progą. Po 10 minučių David Platt smūgiu galva išlygino rezultatą, tačiau po penkių minučių Schillaci buvo pargriautas baudos aikštelėje, todėl buvo skirtas baudinys. Pats Schillaci atsistojo ir atliko smūgį, kad pelnytų turnyro "Auksinį batelį" už šešis įvarčius. Po kelių minučių Nicola Berti įvartis buvo atmestas, tačiau šeimininkai užėmė trečiąją vietą. Anglijai atiteko paguodos prizas - "Fair Play" apdovanojimas, nes ji negavo nė vienos raudonos kortelės ir gavo mažiausiai vidutiniškai geltonų kortelių per rungtynes.
| 1990 m. liepos 7 d.20 :00 | Italija  | 2-1 | Anglija | Stadio San Nicola, Baris |
| Baggio 71' Schillaci 86' (baudinys) | | Platt 81' |
Galutinis
Finalas tarp Vakarų Vokietijos ir Argentinos buvo įvardijamas kaip ciniškiausias ir prasčiausios kokybės iš visų pasaulio futbolo čempionato finalų. 65-ąją minutę už pražangą prieš Jürgeną Klinsmanną buvo pašalintas argentinietis Pedro Monzonas - tai buvo pirmasis žaidėjas, kada nors pašalintas iš aikštės pasaulio futbolo čempionato finale.
Argentina, susilpnėjusi dėl nušalinimo nuo rungtynių ir traumų, nesukėlė didelės grėsmės puolimui, nes varžybose dominavo Vakarų Vokietijos rinktinė, kuriai sunkiai sekėsi sukurti daug aiškių progų įmušti įvartį. Vienintelis varžybų įvartis buvo pelnytas 85-ąją minutę, kai meksikiečių teisėjas Edgardo Codesal paskyrė baudinį Vakarų Vokietijai po Roberto Sensini pražangos prieš Rudi Völlerį. Andreas Brehme, kuris vėliau teigė, kad pražangos nebuvo, realizavo baudos smūgį ir išlygino rezultatą. Paskutinėmis akimirkomis Argentinos rinktinė buvo sumažinta iki devynių, kai Gustavo Dezotti gavo antrąją geltoną kortelę rungtynėse, kai sustabdžius žaidimą pargriovė ant žemės Jürgeną Kohlerį. Rezultatas 1:0 tapo dar vienu pirmuoju: Argentina tapo pirmąja komanda, kuriai nepavyko įmušti įvarčio pasaulio čempionato finale.
Trečiąjį titulą (ir tris antrąsias vietas) iškovojusi Vakarų Vokietija - paskutiniame turnyre prieš šalies susivienijimą - tapo sėkmingiausia to meto Pasaulio taurės šalimi. Vakarų Vokietijos vadovas Franzas Beckenbaueris tapo vieninteliu žmogumi, tapusiu ir kapitonu (1974 m.), ir vadovavusiu Pasaulio taurės laimėtojų komandai, ir tik antruoju žmogumi (po Mário Zagallo iš Brazilijos), laimėjusiu Pasaulio taurę kaip žaidėjas ir kaip komandos vadovas. Tai taip pat buvo pirmas kartas, kai UEFA komanda laimėjo finalą prieš ne Europos komandą.