Magnussen lead away from pole and was never underthreat for the race win, eventually taking victory by a massive 19 second lead. Arthur Pic managed to get into second at the start and spent most of the race being challenged by Will Stevens.
Stevens, who started back in 11th, managed to get close enough on the Frenchman and pull off a pass for second place on the final lap.
Sergey Sirotkin dropped back to fourth in the race after starting on the front row of the grid alongside Magnussen while Norman Nato followed close behind in fifth.
Stoffel Vandoorne finished further down the points in eighth place while another driver who was having a day to forget was Antonio Felix Da Costa.
The Red Bull junior, who initially qualified third, started the race from last after his Arden Caterham ran out of fuel at the end of this morning's qualifying session.
Da Costa managed to climb from 26th to 18th on the opening lap and eventually finished 13th, meaning a second non-score of the season for the championship contender.
Having finished in the top two in all three races so far, Magnussen enjoys a healthy championship lead on 61 points, 17 clear of Vandoorne. Arthur Pic sits third with 35 with Da Costa a further ten points behind.