The game marked the return of Italian football after the coronavirus pandemic led to a suspension of the season in March.
The semi-final first leg ended 1-1 at the San Siro back in February, with a Ronaldo penalty cancelling out Ante Rebic’s opener for AC Milan.
The heroes of the first leg proved to be villains in the second as Ronaldo sent a penalty against the post a few minutes after Rebic had been sent off for a high foot challenge in the first half.
A 0-0 draw after the final whistle saw Juventus advance to the final on the away-goal rule and will meet the winner of the second semi-final between Napoli and Inter Milan on Wednesday.
"Even the greatest miss," Juventus centre-back Bonucci told Rai Sport after Ronaldo, who has scored 25 goals in all competitions this season, missed from the spot.
"Cristiano is always important for us.
"He increases the pressure on opponents' defenders. "He was unfortunate today and [Milan goalkeeper Gianluigi] Donnarumma did well.
"We'll see a great Juventus and a great Ronaldo again."
After the Coppa Italia final on Wednesday, Juventus will resume their quest for a ninth straight Serie A title away at Bologna next weekend.