The Formula One championship leader was quickest with a time of one minute 25.887 seconds on a sunny morning at the Circuit de Catalunya with Hamilton, winner of the last three races and fastest on Friday, 0.869 slower.
Ferrari's Fernando Alonso, winner in front of his home fans last year, was third on the timesheets.
Rosberg qualified on pole in Spain a year ago and will be looking to repeat the feat to turn the momentum back his way after seeing Hamilton whittle the overall lead down to four points in China last month.
Hamilton was keeping his powder dry however, with the 2008 world champion seeing no need to take part in the final 10 minutes of the session.
Whereas the Briton had an untroubled day on Friday, Rosberg suffered cooling problems and was eager to make up for the lost time. He did 16 laps to his team mate's nine on Saturday morning, with his fastest on the medium tyre.
Brazilian Felipe Massa went fourth fastest for Williams while Frenchman Romain Grosjean put in an impressive lap for Lotus, still without a point this season, in fifth.
Australian Daniel Ricciardo was the fastest Red Bull driver, in seventh place, with quadruple world champion Sebastian Vettel 10th but getting some laps under his belt after a day on the sidelines due to an electrical problem.
- Sports & Recreation
- Motor Racing
- Fernando Alonso
- Circuit de Catalunya