Marc Marquez ci ha preso gusto. Dopo il ritorno alla vittoria nel Gran Premio di casa, ad Aragon, il pilota spagnolo trionfa anche a San Marino al termine di una gara condizionata dal meteo. Sorride anche Pecco Bagnaia che ringrazia Martin ed il suo errore di strategia: l'italiano chiude secondo e recupera ben 19 punti all'attuale leader del mondiale, il distacco è ora di 7 punti.
Ad inizio gara è caos, con pioggia battente durata qualche minuto. Alcuni piloti hanno così deciso di entrare ai box per cambiare la moto, ma sono stati costretti a rientrare nuovamente e riprendere quella da asciutto. Tra questi anche Martin, che chiude così 15° e addirittura doppiato. Out Morbidelli mentre era in terza posizione e costretti al ritiro anche Fernandez ed Aleix Espargaro.
La gara sembrava avviata verso un duello tra i due leader del campionato, Martin e Bagnaia. Lo spagnolo, infatti, ha superato in partenza Bezzecchi e Morbidelli per mettersi subito dietro al campione del mondo. All'inizio del secondo giro lo ha quasi centrato e nell'aria c'era un altro duello serrato fra i due.
Al settimo giro, però, è cambiato tutto: dopo la pioggia Martin è rientrato a cambiare le gomme, mentre Bagnaia ha scelto di rischiare rimanendo in pista. Il tempo di rientrare e la pioggia era già finita, con Martin che ha subito preso un giro rientrando per rimontare le gomme da asciutto.
Ne approfitta Marc Marquez, che si riscopre dominatore in queste condizioni incerte: lo spagnolo scattava nono e finisce primo con 3 secondi di vantaggio su Bagnaia. Il vantaggio di Martin sull'italiano è ora di 7 punti, con Marquez che accorcia ulteriormente nella classifica mondiale a -53. È ancora tutto aperto con sette gare al termine del campionato.