The San Francisco Giants star overcame a 119,000-vote deficit in the final days of balloting and finished 123,000 ahead of the Chicago Cubs' Alfonso Soriano on Sunday to claim the third and final starting outfield spot for the National League.
Bonds, heading to his 14th All-Star game and 12th as a starter, was the lone Giants player chosen for the July 10 game in San Francisco — his first trip since 2004. Five home runs from tying Hank Aaron's record of 755, Bonds is beloved in San Francisco but booed in most other cities following years of suspicion that he used performance-enhancing drugs.
"One guy will be a lot bigger than everybody else. It's his hometown," said Cincinnati's Ken Griffey Jr., the top NL vote-getter. "He gets to have all the fun stuff and the press conferences. I just get to play."
With the game in his home park, Bonds figures to be the focus all week. He could be one of the sluggers picked to participate in Monday night's Home Run Derby. If Bonds had been bypassed by fans and players, the choice would have been left to St. Louis' Tony La Russa, the NL manager.
"I think when our staff got together, we were not surprised at all that either the fans or the players were going to vote him in and that somehow we would put him on," La Russa said. "He's having a good year."
Soriano wasn't bothered that fans voted Bonds to start over him.
"Going to the All-Star game means a lot to me, especially my first time with the Cubs," he said.
The Boston Red Sox and AL champion Detroit Tigers led all teams with five players selected. Boston is sending first baseman David Ortiz, third baseman Mike Lowell, outfielder Manny Ramirez and pitchers Josh Beckett and Jonathan Papelbon. The Red Sox could gain a sixth, with reliever Hideki Okajima among five players on the Internet ballot for the final AL spot.
Detroit had three players elected to start for the first time since 1983 (second baseman Placido Polanco, outfielder Magglio Ordonez and catcher Ivan Rodriguez). Pudge, a 14-time All-Star, was elected to start for the 12th time. Polanco is a first-time All-Star.
Detroit's Justin Verlander, who pitched a no-hitter this season, was picked for the AL staff and shortstop Carlos Guillen is a reserve.
The New York Mets (center fielder Carlos Beltran, shortstop Jose Reyes, closer Billy Wagner and third baseman David Wright) tied the Milwaukee Brewers (closer Francisco Cordero, first baseman Prince Fielder, shortstop J.J. Hardy and pitcher Ben Sheets) for the most players picked in the NL. The Brewers hadn't had four All-Stars since 1983.
Fans elected the starters, except for the pitchers, and a record 18.5 million votes were cast before Thursday's deadline.
Alex Rodriguez, with 3.89 million votes, led fan voting for the first time. A-Rod was picked for his 11th All-Star appearance, his 10th as a starter.
"It's hard to think about that right now," Rodriguez said Sunday after the Yankees lost for the ninth time in 11 games. "But it's a pretty neat experience. It never gets old. To be consistent for a long time is something that I'm proud of."
Griffey jumped past Beltran in the final days and topped the NL with 2.99 million votes, the eighth time Griffey has led his league. Griffey is going to his 13th All-Star game, all as a starter.
The rest of the AL starting lineup has the Yankees' Derek Jeter at shortstop, A-Rod at third, and the Los Angeles Angels' Vladimir Guerrero and Seattle's Ichiro Suzuki in the outfield.
Fielder and Los Angeles Dodgers catcher Russell Martin were elected as first-time All-Stars in the NL. Philadelphia's Chase Utley topped voting at second base.
While fans picked the starters, player voting determined eight reserves and eight pitchers in each league.
La Russa and Detroit's Jim Leyland, the AL manager, each chose four position players and three pitchers.
Voting runs through Thursday on MLB.com for the final roster spot in each league. Competing with Okajima in the AL are Detroit pitcher Jeremy Bonderman, the Angels' Kelvim Escobar, Toronto's Roy Halladay and Minnesota's Pat Neshek. The NL five are Pittsburgh pitcher Tom Gorzelanny, Houston's Roy Oswalt, Arizona's Brandon Webb, San Diego's Chris Young and the Cubs' Carlos Zambrano
The top write-in vote totals were for Detroit's Curtis Granderson (376,000) and Cincinnati's Josh Hamilton (151,000).
Some of the most notable snubs included NL MVP Ryan Howard of the Phillies, Atlanta shortstop Edgar Renteria and New York Mets pitcher John Maine. In the AL, Granderson and Gary Sheffield missed out despite excellent numbers.
Howard, who might participate in the Home Run Derby, understood why he was bypassed.
"I can't make it every year," he said. "I was hurt for part of the first half. I don't know if that's why I didn't make it or not."
Fielder said he'll take part in the Home Run Derby.
"That will be pretty cool. I just want to hit one first. That will be a lot of fun," he said.
Several perennial All-Stars will be absent because of subpar performances this year, such as Yankees closer Mariano Rivera and Braves center fielder Andruw Jones.