Juventus beat 10-man AC Milan 2-1 in the quarterfinals of the Coppa Italia on Wednesday.
Paulo Dybala and Miralem Pjanic scored for Juventus in the first half to put the home side in control.
Carlos Bacca reduced the deficit shortly after half-time but Manuel Locatelli was sent off moments later following a second booking. Despite their numerical disadvantage, Milan played better in the second half but couldn't find the equaliser.
Juventus, who lead Serie A by four points, will face Napoli in the semifinals after they beat Fiorentina 1-0 on Tuesday.
Milan had beaten Juventus 1-0 in the league this season and also defeated them on penalties to win the Italian Super Cup last month.
There is an Italian proverb non c'e due senza tre -- things happen in threes -- and Milan were hoping to prove it right.
However, Juventus, who beat Milan 1-0 in the final last year, were aggressive from the outset and took the lead in the 10th minute, with their first attempt on goal.
Kwadwo Asamoah's cross was flicked on by Juan Cuadrado for an unmarked Dybala to volley in from 10 yards.
Juventus were dominating and doubled their lead 11 minutes later when Asamoah was tripped by Juraj Kucka just outside the area and Pjanic curled the resulting free kick into the top left corner.
Juventus had the ball in the back of the net a third time shortly before the half hour, but Sami Khedira was offside when he tapped in the rebound after Milan goalkeeper Gianluigi Donnarumma had parried Gonzalo Higuain's effort.
Milan finally threatened on the stroke of half-time but Bacca and Andrea Bertolacci collided with each other as they went for Suso's ball.
Milan got back into the match eight minutes after the break with a stunning shot. Bacca had his back to goal but managed to hook a volley into the left side of the net.
However, just seconds later, Milan were reduced to 10 men as Locatelli was shown a second yellow card for a foul on Dybala and was dismissed.
Juventus almost took immediate advantage but Mario Mandzukic sent two efforts narrowly wide of the right upright in quick succession.
Milan almost leveled in the 70th when Kucka's free kick stung the gloves of Juventus goalkeeper Norberto Neto.
Donnarumma was also forced into a flying fingertip save to deny Pjanic late on.