Met slechts 16 coureurs gefinisht had de MotoGP race in de Zuid-Portugese Algarve veel weg van het verhaal van de tien kleine negertjes. Jack Miller, Valentino Rossi, Alex Rins, Johann Zarco en Miguel Oliveira gingen allen onderuit, waarvan de laatste wel zijn weg wist te hervatten en op de 16e plaats finishte, terwijl Pol Espargaro na 4 ronden zijn RC213V met een technisch probleem in de pitbox parkeerde.
Voor het eerst dit seizoen had Fabio Quartararo zich op de pole position gekwalificeerd, met naast zich Alex Rins en Johann Zarco op de eerste rij, maar de Monster Energy Yamaha MotoGP coureur kwam bij de start niet goed weg en viel terug naar zesde plaats, achter Johann Zarco, de twee Suzuki's van Alex Rins en Joan Mir, de goed gestarte Marc Marquez en Jack Miller.
In de tweede ronde zette Miller de aanval op Marquez in, die in het begin van de eerste ronde nog het achterwiel van Joan Mir had geraakt, maar gaf daarmee ruimte aan Quartararo om binnendoor voorbij te gaan en daarna het gat met Mir dicht te rijden. Twee ronden later was Quartararo al opgeklommen naar de tweede plaats achter Alex Rins, die in de vierde ronde de leiding had overgenomen van Johann Zarco.
Vier ronden lang wist Rins de druk van Quartararo te weerstaan, maar in de negende ronde sloeg Quartararo bij het aanremmen van bocht 1 zijn slag. De winnaar van Qatar 2 probeerde meteen een gaatje te slaan, maar Rins beet zich in het achterwiel van de Yamaha M1 vast, waarbij de twee continue de snelste rondetijd noteerden. Welke tijd Quartararo ook zette, Rins ging daar steevast een fractie onderdoor.
Tien ronden lang zat Rins in het achterwiel van Quartararo, maar kwam ondanks snellere rondetijden nét te kort om druk op de ketel te kunnen zetten en moest zijn poging Quartararo tot een fout te dwingen zelf met een schuiver betalen met nog zeven ronden te gaan.
De crash van Rins gaf de tweede plaats in de race weer aan Johann Zarco, maar de Pramac Ducati coureur leek het beste van zijn banden te hebben gevergd en zag zijn race een ronde later in bocht 11 eindigen in de grindbak, na in bocht 5 Pecco Bagnaia binnendoor voorbij hebben zien gaan.
Gestart vanaf de 11e plaats op de grid, omdat zijn snelste ronde die hem met 4 tiende verschil de pole position zou hebben opgeleverd was geschrapt vanwege het negeren van de gele vlag, had Bagnaia zijn race goed opgebouwd, maar keek eenmaal op de tweede plaats al tegen een achterstand van dik vier seconden op Quartararo aan, die onbedreigd zijn tweede overwinning van het seizoen voor zich opeiste.
Met zijn tweede plaats is Pecco Bagnaia in de strijd om de wereldtitel opgeklommen naar de tweede plaats, 15 punten achter Quartararo en een punt voor Maverick Vinales, die in de beginfase een beschamend slechte race reed en rondenlang zelfs op de laatste plaats lag, maar uiteindelijk en mede dankzij de vele crashes op de elfde plaats wordt afgevlagd.
En Marc Marquez? De 8-voudig wereldkampioen, die na de kwalificatie zei dat zijn 6e plaats op de grid hem aangenaam had verrast, maar dat de race een ander verhaal zou zijn omdat - precies zoals de doctoren hadden voorspeld - hij de kracht in zijn rechterarm voelde wegvloeien, zat een groot deel van de race in het achterwiel van Aleix Espargaro, om uiteindelijk op 13 seconden van Quartararo werd afgevlagd - 265 dagen na zijn crash op Jerez.
| Pos. | Rijder | Team | Merk | km/u | Tijd/verschil | |
| 1 | Fabio QUARTARARO | FRA | Monster Energy Yamaha MotoGP | Yamaha | 164.8 | 41'46.412 |
| 2 | Francesco BAGNAIA | ITA | Ducati Lenovo Team | Ducati | 164.5 | 4.809 |
| 3 | Joan MIR | SPA | Team SUZUKI ECSTAR | Suzuki | 164.5 | 4.948 |
| 4 | Franco MORBIDELLI | ITA | Petronas Yamaha SRT | Yamaha | 164.5 | 5.127 |
| 5 | Brad BINDER | RSA | Red Bull KTM Factory Racing | KTM | 164.4 | 6.668 |
| 6 | Aleix ESPARGARO | SPA | Aprilia Racing Team Gresini | Aprilia | 164.3 | 8.885 |
| 7 | Marc MARQUEZ | SPA | Repsol Honda Team | Honda | 164.0 | 13.208 |
| 8 | Alex MARQUEZ | SPA | LCR Honda CASTROL | Honda | 163.7 | 17.992 |
| 9 | Enea BASTIANINI | ITA | Avintia Esponsorama | Ducati | 163.4 | 22.369 |
| 10 | Takaaki NAKAGAMI | JPN | LCR Honda IDEMITSU | Honda | 163.3 | 23.676 |
| 11 | Maverick VIÑALES | SPA | Monster Energy Yamaha MotoGP | Yamaha | 163.3 | 23.761 |
| 12 | Luca MARINI | ITA | SKY VR46 Avintia | Ducati | 162.9 | 29.660 |
| 13 | Danilo PETRUCCI | ITA | Tech 3 KTM Factory Racing | KTM | 162.9 | 29.836 |
| 14 | Lorenzo SAVADORI | ITA | Aprilia Racing Team Gresini | Aprilia | 162.3 | 38.941 |
| 15 | Iker LECUONA | SPA | Tech 3 KTM Factory Racing | KTM | 161.6 | 50.642 |
| 16 | Miguel OLIVEIRA | POR | Red Bull KTM Factory Racing | KTM | 157.2 | 1 Lap |
| DNF | ||||||
| Johann ZARCO | FRA | Pramac Racing | Ducati | 164.5 | 6 Laps | |
| Alex RINS | SPA | Team SUZUKI ECSTAR | Suzuki | 164.8 | 7 Laps | |
| Valentino ROSSI | ITA | Petronas Yamaha SRT | Yamaha | 163.1 | 11 Laps | |
| Jack MILLER | AUS | Ducati Lenovo Team | Ducati | 162.9 | 20 Laps | |
| Pol ESPARGARO | SPA | Repsol Honda Team | Honda | 150.7 | 21 Laps |
Tussenstand:
| Pos. | Rijder | Motor | Punten | |
| 1 | Fabio QUARTARARO | Yamaha | FRA | 61 |
| 2 | Francesco BAGNAIA | Ducati | ITA | 46 |
| 3 | Maverick VIÑALES | Yamaha | SPA | 41 |
| 4 | Johann ZARCO | Ducati | FRA | 40 |
| 5 | Joan MIR | Suzuki | SPA | 38 |