After spending the previous two seasons out on loan, O'Dea was released by Celtic at the end of his contract on 1 June 2012 despite a one-year contract-extension option. He said he "had a great time at Celtic and have a lot of friends there so it was important for me that I left properly".
O'Dea signed with Major League Soccer club Toronto FC on 3 August 2012, and made his club debut on 18 August in a 1–0 home loss to Sporting Kansas City. According to CBC News, he looked "lively" in his first match with the team. In a match against Houston Dynamo he passed to Terry Dunfield, who scored, and at the end of the game said he was "delighted" with the result. Manager Paul Mariner named O'Dea team captain in September, succeeding the injured Torsten Frings. The following month, he was unable to play a match against Montreal Impact due to a thigh injury sustained during World Cup qualifying play for Ireland. In O'Dea's first season for Toronto, he played nine times as Toronto finished tenth in the Eastern Conference. O'Dea was employed at left back for the 2013 season after the regular player at that position was injured. According to him, it had been two years since he had previously played left back. O'Dea scored his first goal for Toronto on 3 July 2013 in a 3–3 home draw with Canadian rivals Montreal Impact. Because of his "keen sense of positioning and timing" against Sporting Kansas City, he was named to the Team of the Week for 12 March. Originally part of a transfer (a "win-win for both parties", according to head coach Ryan Nelsen, since O'Dea was the highest-paid player in the league), he was released by Toronto on 18 July 2013 to sign with FC Metalurh Donetsk. Club president Kevin Payne wished him luck and hoped he would return in the future. O'Dea played a total of 26 times for Toronto, scoring one goal and setting up three, and was succeeded as team captain by Steven Caldwell.
After a match against the Czech Republic, O'Dea said he dreamed of being named to the Irish squad for UEFA Euro 2012. Although he was on the roster for the tournament in Poland and Ukraine, he did not appear; the Irish were eliminated from the group stage. O'Dea scored his first senior goal for Ireland, an 88th-minute header, in a World Cup qualifying match against the Faroe Islands on 16 October 2012 which Ireland won 4–1.