Oscar Piastri meraih kemenangan untuk McLaren di Barcelona, memimpin Lando Norris. Sementara itu, Max Verstappen mengalami insiden dan turun ke posisi ke-10 setelah beradu dengan Charles Leclerc dan George Russell. Piastri memimpin balapan dari awal, dengan Verstappen melaju di luar McLaren. Di belakang, pertarungan sengit antara Ferrari dan Mercedes terjadi, dengan Hamilton menyalip Leclerc dan Russell. Verstappen kehilangan posisi kedua setelah disalip Norris, dan kesulitan mengikuti McLaren sebelum melakukan pitstop. Verstappen harus melakukan tiga pitstop untuk mengejar McLaren, karena masalah kopling dan kurangnya cengkeraman.
Selama balapan, Norris dan Piastri memimpin, dengan Verstappen berusaha menyusul dengan pitstop strategis, meskipun kedua McLaren tetap unggul. Safety car keluar setelah masalah teknis pada mobil Mercedes, memberikan kesempatan bagi pembalap untuk berhenti. Verstappen kemudian menerima penalti setelah insiden di akhir balapan, turun ke posisi 10. Piastri memenangkan balapan di depan Norris, sementara Leclerc naik ke podium. Di belakang, Hulkenberg dan Hadjar berhasil mencetak poin untuk Sauber dan Racing Bulls. Gasly dan Alonso juga meraih poin, meskipun Verstappen akhirnya finis di belakang Alonso. Albon tidak selesai balapan setelah bersenggolan dengan Lawson, sementara Stroll absen karena cedera.