Thomas made his first-class debut playing for Western Province B in Newlands, Cape Town in the 1998/99 season.
[5] Thomas scored his maiden century only two games later, hitting 106 not out while batting at number ten,[6] setting a record tenth wicket partnership for North West of 174 with Garth Roe as he did so.
[9] Thomas started the 2001/02 season on top form, claiming five-wickets in an innings on three occasions in the first five games, against Boland,[10] Western Province,[11] and Griqualand West.
[18] His debut for the club, in which he took three wickets and three catches during Western Province's first innings to help restrict them to 173, was overshadowed by future Somerset teammate Charl Willoughby, who took 7/56 & 4/56 to earn himself man of the match.
[19] In the Standard Bank Cup, Thomas' 17 wickets[20] helped the club finish third in the league, which saw them qualify for the semi-finals.
[22] Since then he has constantly represented South Africa A and was part of the Test tour to India, standing in for an injured André Nel.
[25] In their first match of the 2009 Champions League Twenty20, Thomas played a good lower-middle order innings to guide Somerset to a victory over Deccan Chargers.
[27] Thomas was signed to the Adelaide Strikers for the inaugural 2011–12 season of the Big Bash League, as one of the franchise's two international players.
[30] Thomas did not re-sign with Adelaide for the 2012–13 season, instead signing with the Perth Scorchers as a replacement for Albie Morkel, who had not received a clearance from Cricket South Africa.