Hamilton topped the times with 1m 35.078s, 0.240s ahead of Rosberg on 1m 35.318s - while Mercedes' imperious advantage was emphasised by the fact Williams' Valtteri Bottas was their nearest challenger in third, more than one second down on Hamilton with 1m 36.279s.
McLaren's Jenson's Button was right behind the Finn on 1m 36.409s, fractions ahead of Sebastian Vettel's Red Bull on 1m 36.436s, the Ferraris of Kimi Raikkonen and Fernando Alonso on 1m 36.529s and 1m 36.637s, Kevin Magnussen's McLaren on 1m 36.714s and Daniil Kvyat's Toro Rosso on 1m 36.943s.
Local favourite Kamui Kobayashi was the first driver to be caught out, losing the rear of his Caterham through the esses and spinning backwards into the barriers - causing damage to the rear suspension and front wing - on only his fourth lap. The Japanese driver was already playing catch-up having sat out FP1 for Roberto Merhi.
Soon after Kobayashi's off Daniel Ricciardo took his Red Bull round in the fastest time before an odd accident in the final corner. His tyres perhaps weren't fully up to temperature, and as he ran wide on the exit and locked up he slid helplessly through the gravel and into the outer wall.
At first the marshals moved the damaged car further up the hill before Race Control red flagged the session for eight minutes so it could safely be removed and taken back to the pits. At the same time Jean-Eric Vergne's Toro Rosso was recovered after it had ground to a halt with technical issues. The Frenchman was able to rejoin the session, but three minutes from the chequered flag he hit further trouble, bringing out the second red flag when he stopped just after 130R.
Sauber's Esteban Gutierrez also crashed, hitting the barriers on the outside of the Spoon Curve soon after he'd switched to the medium tyre.
When the session resumed following Ricciardo's accident, it was Hamilton who quickly hit the front, and the Briton also looked to be generally quicker than Rosberg when the pair started race simulation runs.
Ricciardo's time of 1m 37.186s still held up for 10th ahead of Vergne, who improved to 1m 37.219s before his second glitch. Nico Hulkenberg was Force India's faster runner on 1m 37.504s, with Sergio Perez managing 15th on 1m 37.786s despite missing the first hour of the session with technical problems. The team mates were split by Lotus's Romain Grosjean, who lapped his Lotus in 1m 37.563s, and Felipe Massa, who posted 1m 37.700s in the second Williams.
Pastor Maldonado was 16thon 1m 37.798s, ahead of the Saubers of Adrian Sutil and Gutierrez on 1m 38.010s and 1m 38.365s respectively.
Marcus Ericsson again put Caterham ahead of rivals Marussia, with the Swede's 1m 39.069s seeing off Jules Bianchi and Max Chilton on 1m 39.306s and 1m 39.333s respectively. Kobayashi had earlier lapped in 1m 42.760s, which left him last.