Federer will seek a third straight Swiss Indoors title Sunday against 2002 champion David Nalbandian of Argentina.
Federer was never in trouble against the 39th-ranked Lopez, winning in 61 minutes.
“I feel great and I’m playing better as the days go by,” Federer said. “Tomorrow will come down to who gets off to the better start.”
The second-seeded Nalbandian defeated Davis Cup teammate Juan Martin del Potro 6-4, 6-4 in the other semifinal.
“Always, playing Roger is tough but it’s good fun playing against him,” said Nalbandian, who is 8-9 against Federer.
Nalbandian was the last player to beat Federer at the US Open — in 2003 — before the Swiss star started his current five-year title streak at Flushing Meadows.
“David is one of the best returners in the game,” Federer said. “Today I had the upper hand and that could be different tomorrow.”
Nalbandian avenged his straight-set loss to Del Potro at the Madrid Masters last week.
“I was the lucky one today, last week it was him,” Nalbandian said. “I served almost perfect and I think that is why I won today.”
The 26-year-old Nalbandian dropped his first service game but didn’t allow another break-point opportunity until serving for the match. He rallied to lead 4-2, breaking Del Potro at love and then forcing his 20-year-old opponent to hit a backhand volley into the net.
The ninth-ranked Del Potro, who won four straight titles earlier this year, called for the trainer to bandage the big toe on his right foot.
Del Potro said his need to qualify for the Masters Cup in Shanghai, China, next month meant he played through his toe injury and tiredness in a match he would have preferred to skip.
“I am fighting for one place there,” he said. “I did my best but it was not enough.”
Nalbandian took his second set-point chance with a serve that was returned long, causing Del Potro to slam his racket in frustration.
Nalbandian broke in the third game of the second set when Del Potro’s running forehand went out. Facing a break point while leading 5-4, Nalbandian used a drop shot with backspin to bring Del Potro to the net, then passed him with a forehand.
Also on NBCSports.com
MLB: Rays' pitchers could be good for long time
NFL: Novacek picks Cowboys, Saints, Steelers
College basketball: Bizarre finish to Olson's career
NBA: Isiah situation shows how fast heroes fall
NBA: Team-by-team season preview
No Offers For Riera - Herrera
Federer, Nalbandian reach Swiss Indoors semis
Nalbandian beats Del Potro in Swiss Indoors semis