After attending Diocesan College in Rondebosch, where he excelled at cricket and captained the South African Schools team, he studied teaching at the University of Cape Town. He made his first-class debut for Western Province in the 1950-51 Currie Cup, and although he scored only 147 runs in five matches he was selected to play in a trial match that was held to help the national selectors choose the side to tour England in 1951. He made 49 and 23 but was not selected to tour. He batted consistently in 1951-52, scoring 487 runs at an average of 54.11, including his first century, 139, in the match against Eastern Province in Cape Town. He made the top score of a rain-affected trial match at the end of the season, 68 not out, and was one of the 15 players selected to tour Australia and New Zealand.
The youngestplayer on the team, Innes took a catch while fielding as substitute in the First Test, but struggled to find batting form. He hit 109 in the match against Victoria before the FifthTest, but his team-mate Headley Keith hit two centuries in the same match and took the vacant batting spot in the Test side. In seven matches on the tour Innes scored 307 runs at 30.70. His captain on the tour, Jack Cheetham, said Innes had "great promise as a cricketer" and predicted that he would take part in "many more cricket tours". But this tour was to be his only one.
Later career
Innes played regularly for Western Province in subsequent seasons without great success. He did not hit another century until the opening match of the 1958-59 season, when he scored 131 against Natal. He scored consistently throughout the season, leading the Western Province batting with 477 runs at 47.70. He captained Western Province from 1959-60 to 1962-63. He scored 219 runs at 54.75 in the 1962-63 Currie Cup and there were suggestions that he might be selected to tour Australia and New Zealand the following season, but he made himself unavailable for the tour. He played for Transvaal in 1963-64 and 1964–65, then retired. He made his highest score, 140 not out, in the final match of the 1963-64 season against Natal. He later served as a selector for Transvaal and Western Province.