Originally selected by the Atlanta Flames in the 1978 NHL Entry Draft, Marsh played with the Flames and followed the organization when they relocated to Calgary. He also played with the Philadelphia Flyers, Toronto Maple Leafs, Detroit Red Wings, and Ottawa Senators. His number has been retired by his junior team, the London Knights.
He scored 23 goals and added 175 assists in 1086 NHL games, which is a record for fewest goals scored by a player who played at least 1000 games.
After his retirement, he moved into the Senators' front office and remained there for several years. Today, he runs a sports bar called "Marshy's" which has two locations: one in Nepean's Centrepointe area, as well as the flagship location in Scotiabank Place, the home of the Ottawa Senators.
Marsh was one of the last NHL players not to wear a helmet during league play.