Djokovic will face Casper Ruud, who beat Alexander Zverev, on Sunday.
The Serb, chasing a record 23rd men’s major title, took advantage of an Alcaraz injury early in the third to win 6-3 5-7 6-1 6-1.
Speaking after the match, Djokovic sympathized with Alcaraz over his injury.
“I have to say tough luck to Carlos. At this level, the last thing you want is cramps and physical problems in the late stages of a Grand Slam. I feel for him, and I hope he can recover, and come back very soon.
I told him on the net he knows how young he is; he has plenty of time ahead of him and will win this tournament many times. He’s an unbelievable player, an incredible competitor, and a very nice guy. He deserves all the applause and support.
It’s tough for him to not know whether to retire or not, but to finish the way he did, congratulations to him for fighting to the end. Great respect for that”, Djokovic said.
In the other semi-final, Norwegian fourth seed Ruud, who lost to Rafael Nadal in last year’s final, won 6-3 6-4 6-0 against German 22nd seed Zverev.
The 26-year-old Zverev was back in the semi-finals after suffering a serious ankle injury on court at the same stage 12 months ago but was outclassed by Ruud, 24, in a straightforward victory.
Ruud will aim to win his first major title at the third attempt, having also lost to Alcaraz in last year’s US Open final.