Lewis Hamilton won Sunday's Monaco GP on the streets of Monte Carlo after holding off a charge from pole-sitter Daniel Ricciardo for the second half of the race.

Hamilton had gotten by Ricciardo using a one-stop strategy, and was helped during a round of stops in which the Red Bull Racing team didn't have set of tires ready for the Australian. This is Hamilton's first win of the 2016 F1 season.

The race began under the Safety Car due to track conditions following heavy rains in the morning. Even though the field remained single file behind pole sitter Daniel Ricciardo, the pace car laps weren't without drama as Daniil Kvyat had to pit due to problems on his Toro Rosso, dropping him off the lead lap.

More from FoxSports

The Safety Car finally came in at the completion Lap 7, and Ricciardo led the field away. Further back in the field, Renault driver Jolyon Palmer skated off into the wall, bringing out the Virtual Safety Car almost immediately, while some cars took advantage of the situation to pit for intermediate tires.

The second incident of the race took place shortly after the Virtual Safety Car period ended, when Kimi Raikkonen overshot the hairpin and came back on course ahead of Felipe Massa and Romain Grosjean. With limited steering control on his damaged Ferrari, Raikkonen got a bump from behind by Massa which pushed him and Grosjean into the wall. Grosjean continued but Raikkonen was done.

Up front, Daniel Ricciardo was checking out ahead of the Mercedes teammates Nico Rosberg and Lewis Hamilton as Rosberg struggled with brake issues. Rosberg let his teammate by on Lap 17, allowing Hamilton to run down Ricciardo for the lead.

Rosberg pitted for intermediate tires on Lap 21, shortly before the third incident of the race took place when Daniil Kvyat attempted a pass on Kevin Magnussen. The race stayed green but Kvyat was out.

Daniel Ricciardo pitted on Lap 23, promoting Lewis Hamilton to the race lead. However, Hamilton was the only driver still on full-wet tires. Ricciardo ran Hamilton back down, but couldn't get by him.

By now, the track had dried out, and Lewis Hamilton led the field down pit road for slicks. Daniel Ricciardo pitted just one lap later, but his team did not have his tires ready and, when he emerged, Hamilton was in front of him.

Ricciardo attempted to get the lead back on track, but then the Virtual Safety Car was deployed as Ricciardo's teammate Max Verstappen crashed into the wall. When the Virtual Safety Car was lifted, the lead battle resumed and the two cars got close to making contact. The stewards investigated the incident but decided to take no action.

Keeping count, the fifth incident of the day took place between the Sauber teammates when Felipe Nasr was told to let Marcus Ericsson by for position. Nasr refused and so Ericsson made an ambitious attempt to take the position, leading both cars to run into each other and spin. Both cars ended up retiring from the race.

From then on, the race was run in the dry without any major incidents, barring a Virtual Safety Car for a piece of debris on the front straight, with Hamilton leading Ricciardo and Force India's Sergio Perez home on the podium.

"Save it, there's nothing you guys can say that will make it any better..." Ricciardo said to his team on the cool-down lap.

Sudden rains at the end of the race saw Nico Rosberg lose traction, costing him a spot to Nico Hulkenberg.

Unofficial race results:

1. Lewis Hamilton - Mercedes
2. Daniel Ricciardo - Red Bull
3. Sergio Perez - Force India
4. Sebastian Vettel - Ferrari
5. Fernando Alonso - McLaren
6. Nico Hulkenberg - Force India
7. Nico Rosberg - Mercedes
8. Carlos Sainz - Toro Rosso
9. Jenson Button - McLaren
10. Felipe Massa - Williams
11. Valtteri Bottas - Williams
12. Esteban Gutierrez - Haas
13. Romain Grosjean - Haas
14. Pascal Wehrlein - Manor
15. Rio Haryanto - Manor
16. Marcus Ericsson - Sauber (DNF)
17. Felipe Nasr - Sauber (DNF)
18. Max Verstappen - Red Bull (DNF)
19. Kevin Magnussen - Renault (DNF)
20. Daniill Kvyat - Red Bull (DNF)
21. Kimi Raikkonen - Ferrari (DNF)
22. Jolyon Palmer - Renault (DNF)