Das erste Rennen der GP3 in Russland begann unter bewölktem Himmel, aber zumindest war es trocken. Leonardo Pulcini konnte seine Führung in einer spannenden Startphase verteidigen, aber er stand unter enormem Druck von Ilott und Hubert. Diego Mencheca musste seinen Boliden in der ersten Runde bereits abstellen.

Nikita Mazepin konnte sich durch einen guten Start um drei Positionen verbessern, nachdem seine Pole-Runde aus der Qualifikation wegen Nichteinhaltung der Streckenbegrenzungen gestrichen wurde. Auch David Beckmann hatte einen starken Start. Von Position 15 gestartet lag er nach nur vier Runden bereits auf dem neunten Rang in den Punkten.

In der fünften Runde verschärfte sich der Kampf um die zweite Position. Hubert und Alesi gingen an Ilott vorbei, der beim Versuch des Konters sogar noch hinter Mazepin und Hughes zurückfiel. Allerdings hatte Mazepin dabei die zweite Kurve innen abgekürzt, wurde aber dennoch nicht bestraft.

Beckmann kämpfte sich unterdessen auch an Ilott und Alesi vorbei, womit er den sechsten Platz übernehmen konnte. An der Spitze hatte sich das Feld im Mittelteil des Rennens ein wenig gesetzt, aber die Abstände waren nicht allzu groß. Beckmann musste sich nach einem Fehler im Kampf um die fünfte Position mit Jake Hughes gegen Simo Laaksonen verteidigen.

Der spannendste Kampf fand aber um den achten Platz, die Pole Position für das zweite Rennen statt. Correa, Ilott, Mawson, Alesi, Piquet und Calderon wechselten sich teils mehrfach pro Runde auf dem achten Platz ab. Mazepin und Beckmann starteten wenige Runden vor dem Ende noch einmal eine Schlussattacke.

Mazepin konnte Hubert überholen und beendete das Rennen auf dem zweiten Platz knapp vier Sekunden hinter Pulcini, der einen beinahe einsamen Start/Ziel-Sieg einfuhr. Hubert komplettierte das Podium vor Verschoor und Laaksonen. Joey Mawson sicherte sich kurz vor dem Ende noch den achten Platz und damit die Pole Position für den Sonntag.