Rubljov, som slog ut elvafaldige Monte Carlo-mästaren Rafael Nadal i kvartsfinalen, vann mot Ruud i två raka set, 6–3, 7–5.
I den andra semifinalen tog det slut för en annan överraskning. Daniel Evans, rankad 33:a, slog ut Novak Djokovic tidigare i turneringen men i semifinalen mot världsfemman Stefanos Tsitsipas tog det stopp.
Greken vann enkelt i två raka set, 6–2, 6–1.
Söndagens final spelas därmed mellan Rubljov och Tsitsipas. Stjärnorna har mött varandra sex gånger tidigare, och vunnit tre matcher vardera.