San Francisco's Barry Bonds hit his 715th career home run on Sunday to move past the legendary Babe Ruth into second place on the all-time list.
It can't get any better than this
The 41-year-old achieved the feat in the fourth inning of the home match against Colorado Rockies.
Only Hank Aaron, with 755, has now scored more home runs than Bonds.
Bonds is a seven-time National League Most Valuable Player and also holds the record for the most home runs hit in a season - 73 in 2001.
Bonds had tied with Ruth with a home run off Brad Halsey in the second inning of a game on 20 May against against Oakland.
He went 17 at-bats and 24 plate appearances since that homer without adding to his total.
But after he broke the record on Sunday off South Korean Byung-Hyun Kim, he received an ecstatic standing ovation from the home crowd.
He took a curtain call and was given another ovation as he walked out to play in left field.
"For me to do it in front of the fans of San Francisco, it can't get any better than this," said Bonds.
"I made them wait longer than I've made them wait in the past. But there was no greater place for this to happen than in San Francisco."
Bonds said he would like to continue playing to make an assault on Aaron's record.
"If you keep playing long enough anything is possible," he said.
But despite his record-breaking performances, he remains an unpopular figure with many fans, having been dogged for years by allegations of steroid abuse.
He has gone from denying he used steroids to saying he never knowingly used performance-enhancing drugs.
His personal trainer, Greg Anderson, was one of four men convicted in a steroid distribution ring which rocked the world of athletics and baseball.