El piloto de Ducati, Marc Márquez, se alzó con una cómoda victoria en el sprint de MotoGP en Hungría, seguido por los pilotos de VR46, Fabio Di Giannantonio y Franco Morbidelli.
Marc Márquez ya había brillado en la clasificación del sábado por la mañana para conseguir su 74.ª pole position en MotoGP, la octava de la temporada. La primera fila la completaron Marco Bezzecchi (Aprilia) y Fabio Di Giannantonio, quienes avanzaron a la última sesión de clasificación a través de la Q1. El subcampeón del mundo, Francesco Bagnaia (Ducati), fue tan solo 15.º.
Marc Márquez ganó el sprint en la primera curva cerrada. Tras él, los dos pilotos de VR46, Fabio Di Giannantonio y Franco Morbidelli. Fabio Quartararo (Yamaha) se cayó en la curva 1. El francés calculó mal su punto de frenada y chocó por detrás a Enea Bastianini (Tech3-KTM), quien tuvo suerte de mantenerse en la posición. Al final de la primera vuelta, Enea Bastianini chocó con Johann Zarco (LCR-Honda). Bastianini torpedeó a Zarco. Ambos quedaron fuera de carrera, y Alex Rins (Yamaha) tuvo que derrapar hacia la grava.
Tras el caos de la primera vuelta, la carrera se calmó a partir de la segunda. En cabeza, Marc Márquez marcó el ritmo y ya había logrado una cómoda ventaja tras dos vueltas, seguido de Di Giannantonio y Morbidelli. Los pilotos de fábrica de Honda, Luca Marini y Joan Mir, aprovecharon el caos inicial y terminaron cuarto y quinto, respectivamente, por delante de Fermín Aldeguer (Gresini-Ducati). Francesco Bagnaia no pudo aprovechar el caos que tenía por delante y terminó 14.º. Pedro Acosta (KTM) quedó fuera de los puntos y perdió la compostura a mitad del sprint. Acosta sufrió su tercera caída del fin de semana. El español cometió un grave error, una oportunidad perdida, ya que, en términos de velocidad pura, Acosta era posiblemente el mayor rival de Marc Márquez.
La victoria al sprint de Marc Márquez nunca estuvo en peligro. La moto número 93 entró en la decimotercera y última vuelta de la carrera con una ventaja de casi tres segundos. El líder del campeonato no dejó nada al azar en la última vuelta y continuó con su impresionante racha de victorias.
Fabio Di Giannantonio se aseguró el segundo puesto al sprint. Su compañero de equipo, Franco Morbidelli, tuvo que aumentar el ritmo en los instantes finales para defender su podio. El piloto de fábrica de Honda, Luca Marini, celebró una sorprendente victoria con el cuarto puesto. El debutante Fermín Aldeguer completó el top 5. Los puntos finales fueron para Joan Mir, Marco Bezzecchi, Alex Márquez y Jorge Martín (Aprilia). El piloto reserva de KTM, Pol Espargaró, estuvo a punto de anotar, terminando décimo, pero fue el mejor de los cuatro pilotos de KTM. Francesco Bagnaia terminó el sprint en 13.º lugar, a 14,9 segundos, y el portugués Miguel Oliveira llevó la Pramac Yamaha hasta el 14.º puesto.