Jorge Martín partia da pole position e chegou em primeiro à primeira curva, com Pecco Bagnaia na sua perseguição, com Marco Bezzecchi a ficar mais para trás dessa dupla. Quanto a Miguel Oliveira, subiu ao nono lugar no arranque, rodando atrás de Marc Márquez, mas perdendo depois uma posição para Brad Binder e voltando para décimo. Mais à frente, Dani Pedrosa subiu para o quarto posto, com Maverick Viñales e Aleix Espargaró atrás de si. Luca Marini era sétimo, com Brad Binder em oitavo e Marc Márquez em nono. Oliveira era 11.º, perdendo um lugar para Álex Márquez.
Na segunda volta, Brad Binder tirou dois da frente, ultrapassando Marini e Aleix Espargaró, com Bagnaia, mais à frente, a alargar muito e a deixar a porta aberta para a ultrapassagem de Marco Bezzecchi, que subiu a segundo. Algumas lutas animadas do quinto lugar para trás, com Brad Binder e Marc Márquez à procura de ganhar posições. Na frente, Marco Bezzecchi aumentava o ritmo na perseguição a Jorge Martín, com Bagnaia a ficar mais para trás e a ver Dani Pedrosa a aproximar-se.
A nove voltas do fim, Binder voltou a atacar Viñales, subindo momentaneamente ao quinto lugar, mas o espanhol respondeu rapidamente e recuperou a posição. Uma volta depois, Binder conseguiu mesmo fazer valer a ultrapassagem, subindo ao quinto posto. Uns lugares mais atrás, Álex Márquez ultrapassava o irmão Marc e subia ao nono posto, último lugar pontuável numa corrida sprint. Era preciso ter atenção aos limites de pista, com vários pilotos a terem avisos.
A cinco voltas do fim, Jorge Martín tinha uma vantagem de oito décimos para Marco Bezzecchi, com Bagnaia sob pressão de Dani Pedrosa e com Brad Binder a aproximar-se desses dois. No fundo do pelotão, Franco Morbidelli e Joan Mir eram penalizados com long laps por limites de pista, tal como Augusto Fernández. Com os dois primeiros lugares assegurados, cabia a Pecco Bagnaia fazer tudo o que estivesse ao seu alcance para defender a terceira posição, numa altura em que Miguel Oliveira perdia a 12.ª posição para o colega de equipa Raúl Fernández.
Jorge Martín controlou a corrida sprint do início ao fim, vencendo à frente de Marco Bezzecchi, com Pecco Bagnaia a terminar mesmo na terceira posição, segurando os ataques de Dani Pedrosa, que terminou num honroso quarto lugar, com Brad Binder em quinto. Maverick Viñales foi sexto, com Luca Marini em sétimo, Aleix Espargaró em oitavo e Álex Márquez no último lugar pontuável. Miguel Oliveira terminou na 12.ª posição, a 13.788 segundos de Martín.