El mallorquín protagonizó una última vuelta «superagresiva» buscando sorprender a su rival, el italiano Fabio di Giannantonio (Speed Up), con el que se tocó a pocas curvas del final, después de exceder los límites del trazado anteriormente, para conseguir una victoria que de inmediato se puso bajo investigación y ambos pilotos fueron llamados a Dirección de Carrera tras bajar del podio.
Fabio di Giannantonio (Speed Up) salió como una exhalación perseguido por Augusto Fernández (Kalex) y Thomas Luthi (Kalex), que hizo una muy buena salida, con Alex Márquez (Estrella Galicia 0'0 Kalex) justo a la inversa, quinto, al perder tres posiciones tras apagarse el semáforo.
«Diggia» tiró con mucha fuerza en las vueltas iniciales, a pesar de algún que otro susto, con Augusto Fernández pegado a su estela y Alex Márquez ya tercero en cabeza de un cuarteto perseguidor que había perdido algunos metros respecto al dúo de cabeza.
Di Giannantonio supo mantenerse firme en el liderato, quizás ayudado por la estrategia de Fernández, quien como ya ha hecho en otras carreras dejó hacer a su rival para estudiar los mejores puntos de adelantamientos y sus opciones reales de luchar por una victoria que le acercaría al líder, Alex Márquez, que como él se «instaló» en una tercera plaza «expectante».
Así transcurrió el primer tercio de carrera, sin cambios significativos, hasta que en la novena vuelta Fernández intentó hacer un interior a «Diggia» que se defendió muy bien y ahí comenzó un pequeño «rifirrafe» que hizo que al final se juntasen en cabeza tanto Di Giannantonio y Fernández, como Márquez, que se puso segundo, y Luthi.
El piloto italiano perseveró en sus intenciones y supo aguantar el ataque de sus rivales para, incluso, lograr unos metros de ventaja, en cualquier caso poco tranquilizadores, si bien su ritmo pasó factura a algunos de sus rivales, como el helvético, que se fue quedando rezagado.
Fernández, que vio que poco a poco se iba Di Giannantonio, ni se lo pensó y atacó a Márquez para recuperar la segunda posición e intentar así alcanzar al italiano.
La ventaja del transalpino, que pasó de cuatro a siete décimas en el decimotercer giro, volvió a decrecer a las cuatro décimas en la decimocuarta vuelta y una más tarde Fernández ya estaba pegado al rebufo de la moto de Di Giannantonio y tras él se mantuvo «enganchado» hasta el final.
Más atrás, se formó un nutrido grupo peleando por la quinta plaza en el que estaban entre otros los españoles Xavier Vierge (Estrella Galicia 0'0 Kalex) y Jorge Navarro (Speed Up), que fue quien más posiciones recuperó desde la salida, que hizo en decimoquinto lugar, el surafricano Brad Binder (KTM), el británico Sam Lowes (Kalex) y los italianos Lorenzo Baldasarri (Kalex) y Enea Bastianini (Kalex).
Di Giannantonio intentó aguantar la presión de su rival y eso le hizo cometer un error en la decimonovena vuelta, a seis del final, al salirse de los límites del trazado y forzar el primer aviso de penalización, lo que le obligaba a no cometer ningún error más si no quería ser sancionado con una «vuelta larga» ("long lap» en inglés) que prácticamente le impediría luchar por la victoria.
Una última vuelta de infarto que comenzó con un interior de Augusto Fernández que enseguida le devolvió Di Giannantonio, que intentó cerrar todos los huecos hasta la bajada de la bandera de cuadros, pero en su intentó de vencer el español volvió a exceder los límites del trazado y cometió varios errores, se tocó con su rival pero acabó ganando la carrera, con el lógico disgusto del italiano, que consideró que no había sido un comportamiento demasiado deportivo.