Rafael Nadal has qualified for the final of the Madrid Open Tennis tournament after securing a hard-earned win over one his toughest rivals, Novak Djokovic.

The four-time Madrid Open champion ended a three-year, seven-match losing streak against Djokovic in spectacular fashion on Saturday.

The Spaniard, 30, won 6-2 6-4 to claim his first victory over the Serb since the 2014 French Open final.

Nadal improved his record on clay this year to 14-0 and will face Austrian Dominic Thiem or Uruguay's Pablo Cuevas in Sunday's final.

Kristina Mladenovic plays Simona Halep in Saturday's women's final.

Nadal confirmed his return to form with a long-awaited win over Djokovic, his 24th in 50 career meetings.

Djokovic had beaten Nadal in seven consecutive meetings, and the last time he dropped a set against Nadal was in the 2014 French Open final.

Nadal will meet either Dominic Thiem or Pablo Cuevas in Sunday’s final.