Bár a szombati időmérő edzésen meglepetésre Lewis Hamilton szerezte meg a pole-pozíciót, azonban a rajt után visszaesett a brit pilóta. Max Verstappen végig biztosan vezetve nyerte meg a Magyar Nagydíjat. A második helyen Lando Norris végzett, Sergio Pérez előtt.
A rajt után Hamilton bár igyekezett ráhúzni Verstappenre, a holland volt jobb íven. A Mercedes brit pilótáját ráadásul, Lando Norris és Oscar Piastri is megelőzte. A legjobb rajtoló a lágy gumikon induló Carlos Sainz volt, aki a 11. helyről a hatodikra lépett fel. A kínai Csou az ötödik helyről a 16. helyre esett vissza. Pierre Gasly autója mindeközben leállt, így véget ért a versenye. Egy körrel később Esteban Ocon is beállt a bokszba, így mindkét Alpine feladta a Magyar Nagydíjat. A visszajátszásból kiderült, hogy a két Alpine ez 1-es kanyarban ütközött egymásnak.
Az ötödik kör után Verstappen volt az élen, őt követte Piastri, Norris, Hamilton, Leclerc, Sainz, Alonso és Pérez. Három körrel később Alonso és Pérez csatázott egymással, de a kemény abroncsokkal versenyző mexikói végül megelőzte a spanyolt.
Tíz kör után többen is kiálltak a bokszba. Stroll, Cunoda, Bottas, Albon és Sargeant is kereket cserélt. Mindeközben a 18. helyről rajtoló George Russell a 10. helyre jött fel.
A 16. körben Carlos Sainz állt be a bokszba, így az őt üldöző Sergio Pérez előzés nélkül jött fel a hatodik helyre. A spanyol a kiállás után a 11. helyre jött vissza. Egy körrel később pedig Lewis Hamilton is a bokszba hajtott. A Mercedes pilótája igyekezett Norris elé vágni ezzel a taktikával, ezért a McLarenes versenyzőt is kihívták. Ugyanezen körben Leclerc is kiállt, de a Ferrari elszúrta a kerékcseréjét, így 6-7 másodpercet állt az autó.
Piastrit egy körrel később hívták ki, s ez elég is volt Lando Norrisnak, aki csapattársa elé tudott vágni, ezzel megszerezve a második helyet.
Sergio Pérez a kerékcsere után a hetedik helyre ért vissza, éppen Leclerc elé. A sorrend: 1. Verstappen, 2. Norris, 3. Piastri, 4. Hamilton, 5. Russell, 6. Sainz, 7. Pérez, 8. Leclerc, 9. Stroll, 10. Alonso volt a 26. körben.
Egy körrel később a friss gumikon teljesítő Pérez megelőzte Sainz-ot is, majd egy körrel később egy hajmeresztő manőver révén Russellt is elkapta.
A verseny felénél Verstappen már tíz másodperccel vezetett Norris előtt. Őt követte Piastri, Hamilton, Pérez, Sainz, Leclerc és Alonso.
A 43. körben Piastri és Pérez is kiment a bokszba. Majd utána következett Norris és a két Ferrari is. Lewis Hamilton maradt a pályán és egy hosszabb etapot teljesített, ekkor a második helyen haladt.
A 48. körben végül Pérez elérte a célegyenes végén Piastrit, s hiába próbált az ausztrál védekezni, a Red Bull pilótája megelőzte. Mindeközben pedig Leclerc kapott egy ötmásodperces büntetést, mert túl gyorsan hajtott a bokszutcában.
Két körrel később Hamilton is kiállt, a Mercedes pilótája az ötödik helyre esett vissza. A sorrend ekkor Verstappen, Norris, Pérez, Piastri, Hamilton és Leclerc volt.
Az 57. körben az egyre lassabban körözgető Piastrit megelőzte Lewis Hamilton, így feljött a negyedik helyre a Mercedes pilótája. A másik McLaren is bajba került, ugyanis Pérez is egyre jobban zárkózott Norrisra. A 65. körben Russell még Carlos Sainz-ot is megelőzte, ezzel fellépett a hetedik helyre.
Lando Norris viszont feljavult, Pérez pedig egyre jobban szakadt el tőle. Hamilton hiába zárkózott a mexikói versenyzőre, már késő volt.
A 70. kör végén a magabiztosan teljesítő Max Verstappent intette le a kockás zászló. A holland több mint 30 másodperccel verte meg Lando Norrist. A dobogó harmadik fokára Sergio Pérez állhatott fel.