Marin Cilic will face Andy Murray in the Western and Southern Open final after defeating Grigor Dimitrov 4-6 6-3 7-5 on Saturday.
While Dimitrov was fighting to make his first ATP 1000 final appearance since Toronto in 2014, Cilic was looking to go on after being eliminated in his last eight Masters quarter-finals prior to Borna Coric's retirement in Cincinnati.
Following a lengthy rain delay halted play after a mere six points had passed, Cilic's first serve was at a disappointing 40 per cent, and Dimitrov converted on his one break point to claim the opening set.
Cilic's second serve came to his aid in the second, with his serving rate only improving by three per cent.
The 12th-seeded Croat won 69 per cent of his points on second serve, with his ability to generate bounce and spin on the hard court.
Dimitrov was not particularly solid on serve either, as the 2014 US Open champion levelled the match to force a deciding set.
In what was a see-saw final set, with both players taking chances from the baseline, Cilic fought from a break down twice to get to 4-4.
Seemingly set to go to a tie-break, Dimitrov was controversially broken a third time in the 11th game, with crowd disturbance during the rally affecting the Bulgarian's concentration on break point.
Cilic then served it out to book his place against top seed and two-time champion Murray, who defeated Milos Raonic earlier.