Home-crowd favorite Marin Cilic will face fourth-seeded Jurgen Melzer of Austria in the Zagreb Indoors final on Sunday.
The top-seeded Cilic rallied to defeat defending champion Mikhail Youzhny of Russia 4-6, 6-4, 6-3 on Saturday to reach his third final at the tournament, while Melzer beat Robin Haase of the Netherlands 7-6 (2), 6-3.
Cilic was given two time violation penalties before advancing to his 16th career ATP final. He was penalized for the first time in the opening set and again in the third, as he prepared to serve while facing a break point. Youzhny then took a 3-2 lead but failed to win another game.
"Match was as expected: Tough," Cilic said. "I did not serve as I wanted to, so I had to find another way to win, with lots of running, baseline exchanges and tactical solutions."
Youzhny received treatment to his left leg at the beginning of the first set, but downplayed the problem.
"I would not even call it an injury. It happened during the match, it was a kind of tightness," he said. "Marin played very well."
Cilic has a 6-2 record against Melzer and is aiming for his ninth career title, and third in Zagreb to go with victories in 2009 and '10.
Melzer won 33 of 36 points on his first serve to advance to his 12th career final and the first since winning in Memphis a year ago.
The Austrian failed to convert two set points at 5-4 in the first set but comfortably won the tiebreaker.
In the second, Melzer failed to serve out the match at 5-2 but broke again in the next game to clinch the win.
"This is by far my best match here this week," Melzer said. "I felt I was the better player today even though we had to play a tiebreaker."