A rajtot követően az élről induló Räikkönen megőrizte vezető helyét csapattársa, Sebastian Vettel előtt. Az egyetlen változás az volt, hogy Hamilton a 14. helyről feljött egyet, megelőzve Stoffel Vandoorne-t, valamint hogy Kevin Magnussen maga mögé utasította Nico Hülkenberget és Danyiil Kvjatot. Ezt követően a verseny első harmadában nem történt változás, Räikkönen biztosan őrizte 2-3 másodperces előnyét Vettellel szemben, míg csapattársa 7 másodperccel volt a harmadik helyen autózó Bottas előtt. A kerékcserék a 33. körben kezdődtek, ekkor Vettel stratégiailag nagyon fontos öt körrel tovább maradt kinn a pályán, mint riválisai, és a saját bokszkiállása után pont Räikkönen elé tért vissza a pályára, az első helyre. Daniel Ricciardo szintén jól beváló gumistratégiájának köszönhetően került a harmadik helyre, Bottas és Verstappen elé, és egy ideig a Ferrari finnjét is meg tudta közelíteni. Hamilton a 46. körben állt ki kereket cserélni, ekkor a 7. helyen autózott. A 60. és a 66. kör között be kellett küldeni a biztonsági autót, miután az Indianapolisi 500-on induló Alonsót helyettesítő Jenson Button a szalagkorlátnak szorította Pascal Wehrleint, akinek a Sauberje derékszögben állt meg a korlát mellett. A futam a 66. kör után indult újra, ekkor előbb Marcus Ericsson ment falnak az egyes kanyarban, majd az addig pontszerző helyen álló Stoffel Vandoorne ütközött ugyanott a szalagkorlátnak, miután összekoccant Pérezzel. A mexikói ezután Kvjattal is összeért a Rascasse-nál, akit ki is ütött a versenyből, ő maga pedig visszaesett a 13. helyre, és először nem szerzett pontot a szezon folyamán. A futamot Stroll sem tudta befejezni fékproblémák miatt. A monacói nagydíjat Vettel nyerte Räikkönen és Ricciardo előtt.