Son of a bank officer, Marsh moved with his family to Moruya on the South Coast of New South Wales at the age of five, and three years later to Beckom, a small town in southwest NSW. He attended Yanco Agricultural High School, near Leeton, and, briefly, Hawkesbury Agricultural College. He left there because of illness, and it was at about this time that he began writing stories. He worked for the CSIRO from 1969 to 1970, backpacked for three years, worked for the NSW Department of Agriculture, and moved to South Australia in 1976 to work for Hardy's Wines, before becoming a full-time writer in 1985.
Marsh has published several books of short stories and his stories and songs have been performed on radio and television as well as recorded on CDs. He wrote songs and a performance piece for the Northern Territory anti-litter campaign, and his plays have been performed at schools and other venues around Australia. Marsh's stories come from his own experiences and from his travelling and talking to people all around Australia, and have won several literary awards. His storytelling reflects his love of the Australian outback and its past.