Duncan is the oldest son of Dave Duncan, a MLB catcher and pitching coach. His younger brother, Chris, was also a MLB first baseman and outfielder.
Shelley graduated from Canyon del Oro High School, located in the Tucson suburb of Oro Valley, in 1998. While there he was a teammate of current All Star second baseman Ian Kinsler. He played on the school's 1997 baseball team that went on to capture the 5A State Championship title.
In 1999 he was a Freshman First Team All-American outfielder while attending the University of Arizona. In 2001, he was named First Team College All-American outfielder and Pacific-10 Conference All-Star. He was selected by the Yankees in the second round of the 2001 Major League Baseball draft, 62nd overall.
Duncan's slugging percentage was .410 with the Staten Island Yankees in 2001. He played outfield for the Greensboro Bats in 2002, where he had a .375 on-base percentage and 10 assists from the outfield in 69 games.
Playing with the Tampa Yankees of the Florida State League in 2004, he hit 19 home runs in 424 at bats. With the Trenton Thunder in 2005 he hit a league-leading 34 home runs and had 92 RBIs. He was named an Eastern League (AA) mid-season and post-season All-Star first baseman. He was also the winner of the 2005 Eastern League All-Star Game Home Run Derby. In 2006, he hit 19 home runs for Trenton in 351 at bats, and was twice the league's player of the week.
In 2007, Duncan was a member of the International League All-Star Team, and was the Topps IL Player of the Month in May while playing for the Triple-A Scranton/Wilkes-Barre Yankees. While with the Yankees AAA team, Duncan had 25 home runs, second in the International League at the time he was called up, and hit .296 with a .577 slugging percentage in 336 at bats.
Duncan made his major league debut on July 20, 2007, as the designated hitter against the Tampa Bay Devil Rays, and recorded his first career hit and RBI. The next day, he hit his first major league home run against the Devil Rays, and the following day had his first multi-home run game, going deep twice in front of the Yankee Stadium crowd. Duncan later hit his fourth Major League home run at Yankee Stadium on July 31, 2007 against the Chicago White Sox. He spent time in 2008 with both the major league Yankees, and the Scranton/Wilkes-Barre Yankees, before suffering a shoulder separation. Duncan remained in Scranton/Wilkes-Barre (Triple-A) for the remainder of the season. He was designated for assignment that offseason, but cleared waivers and remained in the Yankees organization.
On July 31, 2009, Duncan was recalled from Scranton/Wilkes-Barre temporarily as an extra bat. He was optioned the following day and recalled again on September 7. In each of his 3 starts he went 1 for 3 and recorded 1 RBI. Duncan was named the International League Most Valuable Player for 2009 leading the league in home runs and RBIs. Following the 2009 season, Duncan was outrighted to Scranton/Wilkes-Barre, but refused the assignment and elected to become a free agent.
On January 4, 2010, Duncan signed a contract with the Cleveland Indians. He began the season with the Triple-A Columbus Clippers.
The Indians designated Duncan for assignment on August 29, 2012. In 81 games with the club during the 2012 season, he hit .203 with 11 home runs and 31 RBIs.
On January 22, 2013, Duncan signed a minor league deal with the Tampa Bay Rays. He was designated for assignment on April 30, 2013. He declared free agency on October 11.
On January 24, 2014, he signed a minor league deal with the Arizona Diamondbacks.
Duncan signed a minor league deal with the Cincinnati Reds in May 2014. Duncan was released by the Reds on June 18, 2014
On January 7, 2015, Duncan was announced as the new Manager for the Arizona Diamondbacks Short Season-A Affiliate, Hillsboro Hops of the Northwest League. On February 6, 2017, Duncan was named the manager of the Arizona Diamondbacks Class-A Advanced affiliate, Visalia Rawhide.
Duncan is joked about by announcers for his enthusiastic high fives, brother bashes, and chest bumps in the dugout with his teammates. Former Yankee manager Joe Torre said in an interview with the YES Network that he tried to avoid Duncan whenever Duncan would celebrate. Following his first home run, he was interviewed by YES Network's Kim Jones, who asked him for a high five, which he enthusiastically gave her.
Duncan was involved in some minor controversy on September 14, 2007, when, before the game between the Yankees and Red Sox at Fenway Park, Duncan wrote "Red Sox Suck!" along with his autograph on a 10-year-old Red Sox fan's (Griffin Whitman) notebook. .
During a spring training game on March 12, 2008, leading off the 2nd inning in a spring training game against the Tampa Bay Rays, Duncan reached first on a fielding error by third-baseman Evan Longoria. However, he continued on to second, where second baseman Akinori Iwamura caught the ball well before Duncan arrived. Duncan slid, raising his left foot up and spiking Iwamura high and inside of his right thigh. Iwamura sustained a cut above his right knee but was otherwise fine, and made the tag regardless. Duncan was called out and ejected. Many believe that this was in response to Elliot Johnson's aggressive hit on Francisco Cervelli, which resulted in a broken wrist for the catcher. Shortly thereafter, as the Rays and Yankees benches cleared, Rays right fielder Jonny Gomes rushed Duncan and tried to body-block him, only to stumble and eventually be restrained. Gomes was also ejected, as were two of the Yankees' coaches, Bobby Meacham and Kevin Long. On March 14, Duncan and teammate Melky Cabrera both received three game suspensions for their parts in the incident. Rays outfielder Jonny Gomes was also suspended for his actions on the field. Each of these three players' suspensions was reduced one day in length after they decided to drop their appeal of the suspensions.