Roger Federer brought up a century of victories at Wimbledon and now faces a blockbuster semi-final clash with old foe Rafael Nadal.
Federer shook off a nervy start, coming from a set down to defeat Japan's Nishikori 4-6 6-1 6-4 6-4, while Nadal eased past big-serving American Sam Querrey 7-5 6-2 6-2.
He made it through to his 45th Grand Slam semi-final as he stayed on course for a record-extending ninth Wimbledon title, but if he is going to do that he will more than likely have to beat both Nadal and world No 1 Novak Djokovic.
At 37 years and 340 days, Federer became the oldest man to reach the semi-finals at a Grand Slam since Jimmy Connors at the 1991 US Open as he became the first man to reach 100 wins at the All England Club and is in his 13th last-four clash.
Federer dropped a set for just the second time this tournament as Nishikori cashed in on some wayward hitting. But then the Swiss came the party with some stunning accuracy and depth allowing the number two seed to level things up in just 23 minutes.
He made another move at 3-3 in the third set and sealed a decisive break with a forehand that painted the baseline to move ahead.
The writing was on the wall for Nishikori when Federer eventually got the breakthrough to go 5-4 up before he saw out victory with ease in two hours and 36 minutes.
Federer's victory means that Wimbledon will once again play host to one of the sport's greatest rivalries against his old foe Nadal for a place in Sunday's final.
The duo have not met at the All England Club since their titanic tussle in the 2008 final, when Nadal outlasted Federer over five thrilling sets that finished in the late evening gloom.
Nadal needed five set points to clinch the opener after Querrey, who reached the semi-finals here two years ago, broke serve with his opponent at 5-4 but, once he had got over that line, he was rarely troubled.
Querrey served 22 aces but won only 10 of 36 points where he missed his first serve, while Nadal's final tally of 43 winners and 12 unforced errors told of a job well done.