McDonald started his first class career with 32 wickets in his first ten games in 2003–04. His best spell was 6 for 67 against Western Australia. He was struggling however with the bat and despite batting at 4 at the start of the summer he would end it at number 8 in the batting order. Finger surgery the following season limited his appearances. In 2005–06 he played just four matches and only managed 83 runs and four wickets. Injury free, McDonald came into his own in the 2006–07 season. In the Pura Cup he boasted a batting average of over a hundred when he brought up his 500th run. He finished the season as only the 4th player in Sheffield Shield/Pura Cup history to reach the double of 750 runs and 25 wickets in a season. He was rewarded for his strong domestic form by being named in the Australian 30-man preliminary squad for the 2007 World Cup. He was also named in the Australian preliminary squads for the 2007 ICC World Twenty20 and a 7 match ODI series tour of India. He made his Test debut in the Third Test against South Africa at the Sydney Cricket Ground in January 2009 because Andrew Symonds and Shane Watson were both injured. In Australia's first innings, McDonald came in at number six and scored 15 before edging a catch to Mark Boucher. During this innings, he was given a nasty bouncer by Morné Morkel, knocking his helmet off from behind and narrowly missing his leg-stump. The next day, he removed Hashim Amla for 51 to claim his first ever Test wicket. .He was subsequently selected for the tour to South Africa in February–March 2009. In a three match Test series which Australia won 2–1, McDonald made some valuable contributions, including 68 in the second innings of the Third Test at Cape Town and taking 6 wickets during the series. As a result of his performance, McDonald was selected for the 2009 Ashes tour, although did not play in any of the Tests. He did score 75 runs opening the batting in the second innings against Northamptonshire, as well as taking 4 for 15 to win the match for Australia. He returned to Australia temporarily from the 2009 Ashes tour to be with his wife who was due to give birth to the couple's first child. In the 2009 Indian Premier League McDonald played for the Delhi Daredevils, and his experience in India playing for Victoria in the Champions League Twenty20 was a factor in his call-up to Australia's injury-hit ODI squad in India in November 2009. McDonald was one of the 350 players under the hammer for the IPL Auction 2011. He was bought by Delhi Daredevils for US$80,000. On 11 January 2012 during the first transfer window trading, Royal Challengers Bangalore signed him from Delhi for a transfer fee of US$100,000.