Rublev qualified for the 29th final of his career in front of a lively crowd on the Rafael Nadal centre court after the Serb had edged the first set.
The Russian will meet either Frenchman Arthur Fils or the in-form Spaniard Rafael Jodar, who play the other semi-final later Saturday.
Fils, who came back from an eight-month injury absence in February, has been in strong form, finishing as runner-up to Carlos Alcaraz in Doha.
Jodar, 19, has won all three of his matches this week in straight sets, including against world number 24 Cameron Norrie.
World number two Alcaraz withdrew with a wrist injury on Wednesday and on Friday pulled out of next week's Madrid Masters.
