Born in Wallsend, Smith made his debut in the Football League on 5 April 2010, replacing Chris Moore in the 77th minute of Darlington's 1–0 home defeat by Hereford United in League Two. He scored his first Football League goal on 1 May 2010, in the 79th minute of Darlington's 2–0 away win at Macclesfield Town.
He joined Conference North club Workington on loan for a month on 29 October 2010, and made six appearances before returning to Darlington. In his first four Conference matches back with Darlington he scored six goals. On 30 April 2011 he signed a new two-year contract along with Phil Gray and John McReady. In July 2011 Smith went on 2-week trial with Stoke City. Stoke didn't resume their interest in Smith and was sent back to Darlington. Watford then took Smith on trial. However, he was also later sent back to Darlington.
On 31 August 2011, Smith signed a three-year contract at Charlton Athletic He made his Charlton debut against FC Halifax Town in the FA Cup, coming on in the 87th minute. Shortly after coming on he set up the fourth goal of the match from a cross.
On 17 January 2012, Smith joined League Two club Accrington Stanley on a loan deal to the end of the 2011–12 season. He scored his first goal for Accrington on 28 January 2012 in a 4–3 win against Gillingham in which he bagged a hattrick. On 12 March it was announced Smith had returned to his parent club after suffering a season ending knee injury.
On 14 August 2012, Smith made his full first team debut for Charlton Athletic in a League Cup defeat to Leyton Orient. In November 2012 Smith joined Newport County on a one-month loan and scored on his debut versus Cambridge United 6 November. On 8 March 2013, Michael joined League One side Colchester United on loan until 6 April 2013.
On 30 July 2013, Smith joined League Two side AFC Wimbledon on loan until 1 January 2014 and was given the number 9 shirt. He made his debut on the opening day of the 2013–14 season against Torquay United on 3 August 2013, the gamed ended 1–1. He played the entire ninety minutes in "The Dons" second league game of the season, a 1–0 win over Wycombe Wanderers at Kingsmeadow on 11 August 2013.
On 22 January 2014, Smith signed for Swindon Town for an initial £100,000. He made his debut on 25 January 2014 in a 3–1 win against Shrewsbury Town, scoring Swindon's first and third goals.
On deadline day, January 2016 Smith joined League Two side Portsmouth on loan. On 23 June 2016 he signed for Portsmouth on a permanent basis. On 30 August 2016 he scored a hat-trick against Yeovil Town in an EFL Trophy tie, though Portsmouth lost the match 4–3.
On 31 August 2017, Smith signed for League One club Bury on a two-year contract.As of match played 12 September 2017