He played in his first Major League game on September 2, 2007, when he was called up by the Arizona Diamondbacks.
Washington Nationals
On July 22, 2008, he was traded from the Diamondbacks to the Washington Nationals for pitcherJon Rauch and was optioned to the Triple-A Columbus Clippers. Bonifácio was called up to the majors. the Nationals on August 1, along with fellow middle infielder Alberto González. Bonifácio went 1 for 4, with an RBI, run, and a stolen base.
Florida/Miami Marlins
On November 11, 2008, he was traded to the Florida Marlins for left fielderJosh Willingham and pitcher Scott Olsen. On March 31, 2009, the Marlins announced that he would be their starting third baseman for the season. Bonifácio hit his first home run on April 6, 2009, an inside-the-park home run on opening day against the Washington Nationals. This home run marked the first time in forty-one years that an inside-the-park home run was hit onOpening Day; the last being hit in 1968 by Carl Yastrzemski. On May 1, 2011, he hit his first outside the park home run, in a game against the Cincinnati Reds. He had a 26-game hitting streak and a hit in 30 of 31 games during July 2011, the same month he won Player of the Month for the National League. During the beginning of the 2012 season, Bonifácio led the major league in stolen bases, was safe in his first 20 attempts. However, on May 21, he was placed on the disabled list after injuring his left thumb trying to steal second base; it was the first time he was caught stealing. Although he was placed on a 15-day DL, he was expected to miss at least 4–6 weeks. Bonifácio was activated on July 13, and replaced teammate Giancarlo Stanton, who went to the disabled list after having surgery on his right knee. He returned to the lineup against the Washington Nationals and went 0-3. On September 4, 2012, Bonifácio was knocked out for the rest of the 2012 season due to a right knee sprain.
Toronto Blue Jays
On November 19, 2012, Bonifácio was traded to the Toronto Blue Jays along with Josh Johnson, José Reyes, John Buck, and Mark Buehrle, in exchange for Jeff Mathis, Adeiny Hechavarria, Henderson Álvarez, Yunel Escobar, Jake Marisnick, Anthony DeSclafani, and Justin Nicolino. On January 18, 2013, it was announced that the Blue Jays had avoided arbitration with Bonifácio, signing him to a one-year contract worth $2.6 million. Bonifácio opened the season as Toronto's second baseman, but he also got time in the outfield at the start of the season, mainly when Maicer Izturis, the opening day third baseman, would play second base. Through April, Izturis had more starts at second base than Bonifácio. After the Opening Day shortstop José Reyes was injured and replacement Munenori Kawasaki struggled, Izturis got more time at shortstop, giving Bonifácio the bulk of the starts at second base in May and June, with Mark DeRosa also getting starts at second. Bonifácio was used more off the bench in July after slumping to a.203 start with 51 strikeouts through the first 3 months of the season. He was used at left field more when Melky Cabrera hurt his knee on August 1, and he also got time at center field when Colby Rasmus hurt his oblique on August 11. In 94 games with the Blue Jays, he hit.218 with 3 HR, 20 RBI and 66 strikeouts.
Kansas City Royals
On August 14, 2013, Bonifácio was traded to the Kansas City Royals in exchange for cash or a player to be named later. Bonifácio recorded his 500th career hit on August 17, 2013. Bonifácio was used mostly at second base with the Royals in 2013, but also saw time at third base and center field. In 42 games with the Royals in 2013, he hit.285 with 8 XBH, 11 RBI and 21 runs. Overall in 2013, he hit.243 with 3 HR, 31 RBI, 54 runs, 103 strikeouts. Due to Bonifácio's outstanding speed in 2013, Emilio stole 28 bases in 36 attempts. He was designated for assignment on February 1, 2014, and released on February 12.
Chicago Cubs
Bonifácio was signed to a minor league contract by the Chicago Cubs on February 15, 2014. On March 30, 2014, the Cubs announced that he had made the opening day roster. Bonifácio hit his first home run as a Cub on June 7, snapping the longest homer-less streak of any active player, excluding pitchers.
Atlanta Braves
On July 31, 2014, Bonifácio was traded along with James Russell to the Atlanta Braves in exchange for catching prospect Víctor Caratini.
On January 8, 2015, Bonifácio signed a one-year, $4 million, contract with the Chicago White Sox. He was placed on the disabled list on July 29, and reinstated on August 14. Bonifácio was designated for assignment on August 16, 2015 and released two days later. In 2015 with the White Sox he batted.167/.198/.192 in 78 at bats.
Second stint with the Cubs
On August 25, 2015, Bonifácio signed a minor league contract to return to the Cubs.
Second stint with the Braves
On December 18, 2015, Bonifácio signed a one-year contract worth $1.25 million to return to the Atlanta Braves. The team designated him for assignment on April 2, 2016, and he was officially released on April 6. The Braves resigned Bonifácio to a minor league contract on April 10, 2016. The Braves purchased his contract on May 1. However, Bonifácio was not eligible for a call up until May 7, as Major League Baseball ruled that the team had to wait 30 days after Bonifacio's release date of April 6 to recall him. Bonifácio was designated him for assignment for the second time on July 7. In 2016 with the Braves he batted.211/.268/.211 in 38 at bats. In December 2016, Bonifácio signed a new minor league contract with the Braves organization. In 2017 with the Braves, Bonifácio batted.132/.150/.211 in 38 at bats. He was designated for assignment on June 2, 2017 and released on June 6.
Second stint in Arizona
On July 31, 2017, Bonifácio signed a minor league contract with the Arizona Diamondbacks and played with the Jackson Generals. He elected free agency on November 6, 2017.
On January 28, 2019, Bonifácio signed a minor league deal with the Tampa Bay Rays that included an invitation to spring training. He was released on March 29, 2019, but re-signed to another minor league deal on April 3. He became a free agent following the 2019 season.
Second stint with Nationals
On January 28, 2020, Bonifácio signed a minor league deal with the Washington Nationals. On July 23, it was announced that Bonifacio had been selected to the 40-man roster.
Personal life
His younger brother, Jorge Bonifacio, also plays professional baseball.