Eight-time champion Roger Federer was sensationally knocked out of Wimbledon on Wednesday by South African giant Kevin Anderson while Rafael Nadal edged Juan Martin del Potro in a Centre Court epic and will meet Novak Djokovic in the semi-finals.
Defending champion Federer lost a Court One thriller, 2-6, 6-7 (5/7), 7-5, 6-4, 13-11 as 32-year-old Anderson became the first South African in the Wimbledon semi-finals since Kevin Curren in 1983.
"Down two sets to love I tried my best to keep fighting. Beating Roger Federer here at Wimbledon will be one I remember, especially in such a close match," Anderson said.
"I kept telling myself to keep believing. I said today is going to be my day."
In a nail-biting four hour and 13 minute classic, it was 36-year-old Federer's earliest exit at the All England Club since his shock second round defeat against Sergiy Stakhovsky in 2013.
"Sometimes you don't feel good, and you try your best. Today was one of those days. I didn't see it coming," said Federer.
"I had moments where I was great, I felt like I was reading his serve, other moments where I don't know where the hell I was moving to."
Eighth seed Anderson will play American ninth seed John Isner on Friday for a place in Sunday's final.
Three-time champion Novak Djokovic, meanwhile, reached his first semi-final at the majors in more than two years by seeing off Japan's Kei Nishikori 6-3, 3-6, 6-2, 6-2.
The 12-time Slam champion will face old rival and world number one Nadal who saw off Del Potro 7-5, 6-7 (7/9), 4-6, 6-4, 6-4 after four hours and 48 minutes on Centre Court to reach his sixth Wimbledon semi-final and 28th at the majors.
For the only the second time at Wimbledon, Federer was beaten after holding a two-set lead, with his previous loss from that position coming against Jo-Wilfried Tsonga in the 2011 quarter-finals.
The 20-time Grand Slam champion appeared to be moving towards his fifth successive Wimbledon semi-final after taking the opening two sets.
That initial burst gave Federer 34 successive sets won at Wimbledon, equalling his own record set between 2005 and 2006.
But, playing on Court One for the first time in three years, Federer was unusually error-prone.
Anderson had failed to take a single set off Federer in their previous four meetings.
Yet once he had ended Federer's run of holding serve for 85 consecutive games -- a streak dating back to last year's semi-final -- Anderson's confidence soared.
Only once before had Federer played more games at a Grand Slam and on that occasion, he prevailed 16-14 in the 2009 Wimbledon final against Andy Roddick.
But this time Federer cracked, serving his first double fault at 11-11 in the decider to give Anderson the crucial break that ushered the Swiss to the exit door.
Victory on Wednesday gave Nadal his 11th win in 16 meetings against the fifth seed Del Potro as the Spaniard stayed on course for an 18th Grand Slam title.
"I think it was great quality tennis and in the final set there were some amazing points," said 2008 and 2010 champion Nadal.
"Sorry to Juan Martin, he's an amazing opponent and player. In some ways he deserves to win as well.
"Anything could have happened, so this is a big achievement for me to get to the semi-finals at Wimbledon.
"In the last set there was a little of everything, great points, great rallies, he was hitting crazy with his forehands."
Djokovic, who leads his epic head-to-head rivalry with Nadal 26-25, reached his eighth Wimbledon semi-final and 32nd at the majors after a stormy Centre Court clash against Nishikori.
It will be the 31-year-old Serb's first semi-final at a Slam since the 2016 French Open when he completed the career Grand Slam.
-- 'Unnecessary warnings' -
The 12-time major winner prevailed despite picking up two code violations and accusing umpire Carlos Ramos of "double standards".
"I think the first warning was unnecessary," said Djokovic, who was sanctioned in the second set for spearing his racquet into the court.
"It didn't harm the grass. Kei did the same in the fourth set but wasn't warned.
"The umpire said he didn't see it. I don't think it's fair but it is what it is."
Despite his anger -- and picking up a time violation in the fourth set -- 12th seed Djokovic still reeled off 10 of the last 12 games.
US ninth seed Isner made the semi-finals of a major for the first time with a 6-7 (5/7), 7-6 (9/7), 6-4, 6-3 win over 2016 runner-up Raonic.