O'Donnell played youth football for Newcastle in County Galway before joining Arsenal as a trainee in the summer of 2002 after completing his Junior Certificate exams.[1] He signed a professional contract at the club in January 2003 but left again in July 2005 without making an appearance for the first team.[2] While he credits the coaching he received during this time with giving him greater confidence on the ball, he has expressed regret at moving to Arsenal at such a young age, feeling that if given the choice again he would have stayed at home, completed his Leaving Certificate exams and joined a team in the League of Ireland.[3]
Falkirk
O'Donnell signed for Falkirk in August 2005 in search of more first-team opportunities[4] and became a regular in their team, mostly playing on the left-side of midfield. He had a greater desire to be played centrally in his natural position, and after receiving no assurances about this from manager John Hughes, O'Donnell rejected a new contract in summer 2007.[5]
Return to Ireland
O'Donnell was signed by Sean Connor on an 18-month deal for Bohemians in August 2007. He became a regular starter in the first team, which included scoring against Rhyl in the 2008 UEFA Intertoto Cup,[6] but decided to move on after one season at Dalymount Park.
Having rejected a new contract offer,[7] he signed a two-year deal with Cork City on 21 February 2009.[8]
He signed for his local club, Galway United, in the weeks leading up to the 2010 League of Ireland season. He made 28 appearances for Galway scoring eight goals.
Shamrock Rovers
In January 2011, O'Donnell signed for the League of Ireland champions, Shamrock Rovers.[9]
On 22 February 2011, O'Donnell scored in his first match for the Shamrock against Dundalk in the Leinster Senior Cup.[10]
In August 2011, he scored the winning goal from a penalty at Partizan Belgrade as Rovers became the first Irish club to reach the group stages of the UEFA Europa League.[11] O'Donnell missed a penalty against Rubin Kazan in the first game of the group stage.[12] Prior to the match, he was involved in an attempt by senior players to secure a bigger bonus from the fan-owned club by threatening not to play the game.
On 24 October 2014, O'Donnell scored the first goal in the 48th minute of Dundalk's 2–0 win over Cork City in the final match of the season. As a result, Dundalk were crowned premier league champions for the first time in 19 years, winning the league by two points over Cork City who led going into the match.[14] It was O'Donnell's first start since returning from injury and he was awarded man of the match after an impressive display.[15]
The club captain went on to play a prominent role in title wins in 2015 and 2016. Dundalk's three-in-a-row achievement was enhanced as they achieved it despite a bruising fixture schedule brought about by qualification for the group stages of the Europa League. O'Donnell signed a new two-year contract before the 2017 season but it ended in disappointment with rivals Cork City completing a League and Cup double. He announced his retirement from football in January 2019.
After retiring in January 2019, O'Donnell was immediately hired as a Senior Opposition Analyst & Scout at Dundalk.[17] O'Donnell was announced as the head coach of St Patrick's Athletic on a two-year contract on 31 August 2019, his first job in senior management, following the resignation of Harry Kenny.[18] He brought in his former Arsenal and Falkirk teammate Pat Cregg as his assistant.[19] His first game in management came on 6 September 2019 as his Pat's side came from behind to win 2−1 away to Finn Harps thanks to goals from Darragh Markey and substitute Rhys McCabe.[20] On 28 November 2021, O'Donnell led his side to victory in the 2021 FAI Cup Final, defeating rivals Bohemians 4–3 on penalties following a 1–1 draw after extra time in front of a record FAI Cup Final crowd of 37,126 at the Aviva Stadium.[21] O'Donnell left the club in controversial circumstances in December 2021, returning to his former club Dundalk as head coach on a 2-year contract.[22] A High Court action was filed against him by the holding company behind Pat's.[23] On 8 April 2024, O'Donnell was sacked by Dundalk, with his side bottom of the table and without a win from their first 8 games of the season, having scored just 3 goals and conceding 15 in the process.[24][25] On 8 May 2024, O'Donnell was announced as assistant manager of Bohemians, under recently appointed manager Alan Reynolds.[26]