O'Shea started his National Hockey League career with the Minnesota North Stars in 1968 after playing for Canada at the 1967 World Championship and the 1968 Winter Olympics. O'Shea would also play for the Chicago Black Hawks and St. Louis Blues of the NHL, and Minnesota Fighting Saints of the World Hockey Association.
The Canadiens traded him to the Minnesota North Stars for two first round draft choices (who turned out to be Chuck Lefley and Chuck Arnason) in 1967. O'Shea turned pro with the Stars in 1968 and played two and a half seasons there. He was traded to the Chicago Blackhawks in 1971 for Doug Mohns and Terry Caffery and then sent to the St. Louis Blues for Christian Bordeleau the following season. He left hockey in 1973.
After sitting out for a year, O'Shea played one season for the Minnesota Fighting Saints in 1974-75 and the retired.
In the NHL, O'Shea played in 369 games, scoring 65 goals and 114 assists.