As a youth, Flynn played in the 2002
Quebec International Pee-Wee Hockey Tournament with the Middlesex Islanders
minor ice hockey team. Flynn played his high school hockey at a New England private school in Connecticut,
Pomfret School. Undrafted, Flynn previously played for the
Maine Black Bears in the
NCAA Men's Division I Hockey East conference. In his senior year, Flynn's outstanding play was rewarded with a selection to the 2011-12 Hockey East First-Team All-Stars. On March 28, 2012, Flynn agreed to terms on a two-way, entry-level contract with the
Buffalo Sabres. As Flynn was over the age of 22 when he entered the league, he was allowed to forgo the
NHL Draft and sign as a
free agent. During the
lockout shortened
2012–13 season, Flynn was called up March 1, 2013, and scored his first NHL goal on March 7 against
Johan Hedberg of the
New Jersey Devils. On March 2, 2015, Flynn was traded by the Sabres to the
Montreal Canadiens for a
2016 fifth-round draft pick. On April 15, 2015, he played in his first ever playoff game and scored the game-winning goal against the
Ottawa Senators in Game 1 of the
Eastern Conference Quarterfinals. Following the conclusion of the
2014–15 season, Flynn re-signed to a two-year contract extension with the Canadiens on July 1, 2015. After two and a half seasons with the Canadiens, Flynn left as a free agent and signed a one-year, two-way contract with the
Dallas Stars on July 1, 2017. After attending the Stars training camp, Flynn was placed on waivers and assigned to AHL affiliate, the
Texas Stars for the duration of the
2017–18 season. In 66 games he regained his scoring touch, to contribute with 18 goals and 47 points. He helped the Stars advance to the
Calder Cup finals before falling to the
Toronto Marlies. As a free agent from the Stars, Flynn opted to sign a one-year, two-way contract with the
St. Louis Blues on July 1, 2018. Flynn was assigned to begin the
2018–19 season, with the Blues' AHL affiliate, the
San Antonio Rampage. Limited to 21 games through injury with the Rampage, Flynn requested to be terminated from his contract with the Blues and was place and cleared unconditional waivers on January 18, 2019. On January 21, 2019, Flynn agreed to his first European contract, joining Swiss club
EV Zug of the
National League (NL) on a one-year deal through the end of the
2018–19 season. He was released at the end of the season and signed a 4-month contract with
HC Ambrì-Piotta on August 9, 2019. On December 31, 2019, his contract with Ambri-Piotta was extended through the end of the 2019–20 season. On May 22, 2020, Flynn was signed to a one-year contract extension by Ambri-Piotta through the
2020–21 season. After three seasons abroad in Switzerland, Flynn returned to North America as a free agent, securing a one-year, two-way deal with the
New Jersey Devils on July 29, 2021. ==Career statistics==