Novak Djokovic beat Carlos Alcaraz 6-3, 5-7, 6-1,6-1 in three hours and 21 minutes. The Serb will play the winner of Alexander Zverev and Casper Ruud in Sunday's final.

Al Carcaraz has suffered five muscle injuries since the latter part of last season. The Spaniard has won the title in Buenos Aires, Indian Wells and Rio de Janeiro, but has not won a grand slam title since 2005.