London - Croatia's Marin Cilic reached his third Queen's Club final as the world number seven won the battle of the big servers to beat Gilles Muller 6-3, 5-7, 6-4 on Saturday.
Cilic became the first player to break Muller in the tournament despite a barrage of 22 aces from the world number 26 and hammered down 20 aces of his own to return to the final of the Wimbledon warm-up event for the first time since 2013.
The 28-year-old lifted the Queen's trophy in 2012 and finished runner-up to Andy Murray a year later.
Although Cilic dropped a set for the first time this week, the former US Open champion hit back impressively to secure his second ATP final berth of 2017.
Cilic will face Grigor Dimitrov or Feliciano Lopez in Sunday's final as he eyes a second title this year, and 18th in total, following his success in Istanbul last month.
"Today's match was a really high level. I played really well throughout and Gilles was pushing me to the limits," Cilic said.
"I've felt really good on serve all week. I was mixing it up and playing smart."
Both Cilic and Muller had made it to the last four without dropping serve, while the Croatian hadn't even faced a break point.
It was Muller who cracked first as Cilic unloaded a backhand down the line to break for a 4-2 lead.
With his own serve still untouchable, that was all the advantage Cilic needed to close out the first set.
Muller wasn't going to surrender without a fight.
He saved a host of break points in the second set before suddenly rocking Cilic with the first break of the Croatian's serve to level at one set all.
Having won the 's-Hertogenbosch title last week, Muller came into the semi-finals holding a 7-0 record on grass this year.
But Cilic, who won 78 percent of his service points, held the edge on the rare occasions when the serving slugfest gave way to a prolonged rally.
He delivered the knockout blow with a break in seventh game of the final set and fittingly sealed the victory with an ace.
Results from the ATP tournament at Queen's Club in London on Sunday (x denotes seeding):
Marin Cilic (CRO x4) bt Gilles Muller (LUX) 6-3, 5-7, 6-4