Answer
No, Barry Marshall has not played domestic cricket in any other country apart from South Africa. He has only ever played for the South African national team, and has never played for any other country. This is likely because he is a South African citizen, and therefore would not be eligible to play for any other country.