Sebastian Vettel took the lead on lap three and then controlled the 57-laps race as he came home 9.1 seconds clear of Lotus' Kimi Raikkonen. Raikkonen's teammate Romain Grosjean finished third.
It was Vettel's second win in four races this year and the 28th of his career. It saw the 25-year-old German pass Jackie Stewart into sixth in the all-time Grand Prix winning list.
Force India's Paul di Resta, who led the race in 9th lap, finished fourth but was a serious contender for a podium finish. His teammate Adrian Sutil struggled but managed to finish 13th.
Mercedes' Lewis Hamilton pipped Red Bull's Mark Webber in the final lap to make it to the top 5 after starting the race from 9th place.
Nico Rosberg started the race from pole but finished 9th after struggling with serious rear tyre wear.
The partners could face the consequences for the team's 3-1 loss to England.
Serena Williams performed "Diamonds Are a Girl's Best Friend".