D'Agostini began his Midget age career with the Root River Rangers, a midget AA team from Sault Ste. Marie. After one season with the Rangers, he played one year Midget AAA for the Soo North Stars. The following year he was selected as a walk-on player by the Guelph Storm. On April 2, 2008, Montreal recalled D'Agostini from the Hamilton Bulldogs of the American Hockey League. He played his first NHL game on April 3, 2008 against the Buffalo Sabres. He scored his first career goal on December 2, 2008 against the Atlanta Thrashers. On December 4, D'Agostini recorded his first NHL assist against the New York Rangers. On August 14, 2009, the Canadiens signed D'Agostini to a one-year contract extension. During the 2010–11 season, on March 2, 2010, Montreal traded D'Agostini to the St. Louis Blues for Aaron Palushaj. As free agency approached, on July 1, 2011, the Blues re-signed D'Agostini to a two-year contract. As a result of the NHL lockout at the start of the 2012-13 season, D'Agostini signed a two-month contract with SC Riessersee, from the resort town of Garmisch-Partenkirchen, playing in the German 2nd Bundesliga, on October 10, 2012. After 10 games with Riessersee, D'Agostini returned to the Blues in order for the start of the shortened NHL season. A frequent healthy scratch, appearing in only 16 games with the Blues, D'Agostini was traded to the New Jersey Devils along with a conditional 7th round pick in exchange for a conditional 4th or 5th Round pick in the 2015 NHL Entry Draft on March 22, 2013. New Jersey released D'Agostini at season's end and on July 10, 2013, Pittsburgh Penguins signed him as a free agent to a one-year contract at the league minimum. After participating in just 8 games in the opening months of the 2013–14 season, the Penguins placed D'agostini on waivers. He was claimed by the Buffalo Sabres on November 27, 2013. Released by the Sabres, with no NHL clubs interested in acquiring him, D'Agostini signed a one-year contract on July 18, 2014, to play for Genève-Servette HC of the National League. He played 40 games in the 2014-15 regular season followed by twelve postseason contests with seven goals and three assists. He was then signed to a two-year contract, making him an Eagle through the end of the 2016/17 season. In the 2015-16 season, D'Agostini tallied 20 goals and 20 assists in 46 regular season games. He chipped in with three goals and two assists in the playoffs. On May 31, 2016, he was shipped to HC Ambrì-Piotta of the NL, despite one year remaining on his contract with Geneva. On July 27, 2017, D'Agostini signed a one-year contract extension with the Biancoblu. On March 7, 2018, D'Agostini agreed to an early one-year contract extension through the 2018-19 season. At the conclusion of the 18/19 season, he was signed to a new one-year contract extension on April 24, 2019. On May 22, 2020, D'Agostini agreed to a two-year contract extension with Ambri-Piotta through the 2021/22 season.