The world number one has not been his dominant self this season with just one title in seven events played.
The 26-year-old, however, is starting to build some momentum heading into Roland Garros - the one major that has eluded the 12-time Grand Slam champion.
While Federer's overall season has been somewhat inconsistent, his form in Hamburg has been near faultless as he claimed a 20th straight win at an event he has won in four of the past six seasons.
In addition to last year's title, when he ended Rafael Nadal's record 81-match claycourt winning streak in the final, Federer also won here in 2002, 2004 and 2005.
His semi-final foe will be unseeded Italian Andreas Seppi, who defeated local favourite Nicolas Kiefer 6-3 5-7 7-5 in a match that lasted three hours and 14 minutes.
Kiefer was attempting to become the first German to reach the semi-finals here since Tommy Haas in 1997.
An intriguing situation has developed on the opposite side of the draw where the second-seeded Nadal will face number three Novak Djokovic.
Nadal advanced with a 6-1 6-3 win over Carlos Moya and Djokovic claimed a 6-2 6-3 triumph over Albert Montanes to set up a winner-take-all showdown for the number two ranking in the world.
The 21-year-old Nadal, who has held the spot for a record 147 consecutive weeks, is just 310 points ahead of Djokovic in the ATP rankings.