The Swiss, 35, won 7-6 (7-4), 7-6 (7-4), 6-4 to reach his 11th Wimbledon final, having last won the title in 2012, BBC reported.
He will face Croatia's Marin Cilic in Sunday’s men’s final after the seventh seed beat American 24th seed Sam Querrey 6-7 (6-8), 6-4, 7-6 (7-3), 7-5.
Cilic, 28, is into his second major final after winning the 2014 US Open.
"It's unbelievable," said Cilic, the second Croat to reach the men's final after Goran Ivanisevic won in 2001.
"I've been playing really great tennis."
Federer has already added to his lengthy list of achievements by reaching a record 29th Grand Slam final, becoming the second-oldest man to do so after the 39-year-old Ken Rosewall reached the 1974 Wimbledon final.
Having waited five years to win his 18th major title at this year's Australian Open, Federer could make it 19 only six months later.
"I feel very privileged to be in another final," he said.
"I've got the pleasure to play on Centre Court another time. I can't believe it's almost true again. I'm happy to have a day off to reflect on what I've done at the tournament."
Federer had won his past seven matches against Berdych, and 18 of 24 in all, but the Czech made him work for number 19.
There were just three breaks of serve over two hours and 18 minutes, two for Federer, who hit 53 winners to Berdych's 31 in a high-quality contest.
Federer saved a match point on his way to beating Cilic in last year's quarterfinals, and said, "Last time we had a brutal match – I was two sets down. I had to get lucky to win.
"Marin is a great guy. He's a lovely guy, in his first Wimbledon final.
"He crushed me at the US Open a few years ago. I hope he doesn't play that good."
Cilic return gives him the edge
Querrey, 29, had played three successive five-set matches to reach his first Grand Slam semifinal, and almost forced a fourth before Cilic finally saw off the American's challenge.
Both men had more than 100 aces to their name heading into the semifinals, and it was the Croat who had more success in breaking down the big serve.
Cilic won more than twice as many points on return and earned 14 break points to Querrey's three, but the American saved 10 and was two service holds from taking it to a fifth set.
The match was over two hours old before two loose shots from Querrey – a backhand error followed by a forehand into the net – separated the pair in the third set tiebreak.
The pair's previous meeting at Wimbledon in 2012 lasted over five hours and finished 17-15 to Cilic in the fifth set, and when a wayward Cilic smash helped Querrey move ahead in the fourth, another final set seemed inevitable.
"Sam was playing high-level tennis, especially in the first set," said Cilic.
"I was 4-1 up in the tiebreak and didn't convert. After that I was better in the return games. The level was really high."