Ronaldo smashed a swerving shot from 25 metres around the defensive wall and straight at goalie Andres Fernandez. The keeper tried to punch it out but ended up sending it down off the ground and between his legs into the net.
Ronaldo’s 22nd-minute strike effectively sealed the contest, with Osasuna having lost the first leg 2-0.
Osasuna forced Madrid goalkeeper Iker Casillas into a number of saves to close the half after having rarely threatened before Ronaldo’s opener.
Angel Di Maria capped a quick counter in the 56th by sweeping home Jese’s cross following a long run from the halfway line, securing a 4-0 aggregate victory at El Sadar Stadium.
Ronaldo’s 30th goal in all competitions this season — and 37th when counting those scored for Portugal — further justified the forward claiming the Ballon d’Or ahead of Lionel Messi and Franck Ribery.
Madrid will next play Espanyol, who eliminated second-tier Alcorcon 4-3 following a 4-2 home win on the night.
Portuguese forward Pizzi curled home an 86th goal to ensure Espanyol’s progress at the expense of Alcorcon, which famously knocked Madrid out of the competition in 2009.
A rematch with Madrid had looked on the cards after Alcorcon midfielder Javier Peral made it 2-2 in the 80th minute, with his side holding a 1-0 lead from the home leg.
Victor Alvarez put Espanyol 3-2 ahead minutes later but the second division side were still through thanks to the away-goals rule until Pizzi’s curler from the left side.
Also, Mikel Rico scored two goals to send Athletic Bilbao into the last eight with a 2-0 victory against last-place Real Betis.
Bilbao, trailing 1-0 after the first leg in Seville, levelled the contest on aggregate in the 23rd minute when Rico produced a magnificent touch to gather Ander Iraiola’s lofted pass into the area on the run and score with a left-footed shot.
Athletic, a 22-time winner of the cup, secured their passage at its San Mames Stadium in the 67th minute when a poor clearance rolled to Rico and his angled shot secured a 2-1 victory over two legs.
The Basque club will play defending champions Atletico Madrid next.
Levante beat Rayo Vallecano 1-0 thanks to David Barral’s first-half goal to advance by the same scoreline. Levante are most likely to play Barcelona, who lead Getafe 4-0 before Thursday’s return leg.