Keane began his junior hockey career in the Junior A Manitoba Junior Hockey League with the Winnipeg South Blues. He then joined the major junior ranks in the Western Hockey League with the Moose Jaw Warriors. Undrafted out of junior, Keane signed as a free agent on September 25, 1985, with the Montreal Canadiens and started his NHL career in 1988. He helped the Canadiens to a Stanley Cup championship in 1993, his fifth NHL season. He spent eight seasons in Montreal and was captain of the team from April 1995 to December 1995. After Kirk Muller was traded near the end of the 1994-95 season, Keane was named as the 24th captain of the Montreal Canadiens. Keane was subject to media scrutiny after speaking to Mathias Brunet of La Presse. Keane declared that he had no intention of learning French. He drew controversy in the French media after saying he did not believe it was necessary to speak French, since players on the team spoke predominantly English. During the 1995–96 NHL season, Keane was traded along with Patrick Roy to the Colorado Avalanche in exchange for Jocelyn Thibault, Andrei Kovalenko, and Martin Ručinský. He won his second Stanley Cup that season, helping the Avalanche defeat the Florida Panthers in four games in the Finals. Keane spent another season with the Avalanche, before becoming a free agent in the summer of 1997. He signed with the New York Rangers, where he played for half a season before the Rangers traded Keane, Brian Skrudland, and the Rangers' 1998 6th round draft choice to the Dallas Stars in exchange for Todd Harvey, Bob Errey, and the Stars' 1998 4th round draft choice. Keane played in Dallas until 2000–01, helping the Stars win the Stanley Cup in 1999 and returning to the finals the next year. He started the 2001–02 NHL season with the St. Louis Blues but finished that season back with Colorado. Keane stayed in Colorado until he left for the Vancouver Canucks at the start of the 2003–04 NHL season. After the 2004-05 lockout, Keane signed with his hometown team, the Manitoba Moose, for the 2005–06 AHL season. Keane played five seasons for the Moose. He was named captain in 2005 and remained Manitoba's captain until July 20, 2010, when his contract was not renewed. Keane was also captain of the AHL All-Star Team Canada in 2007. Keane's number 12 jersey was retired February 12, 2011, when the Manitoba Moose took on the San Antonio Rampage at Bell MTS Place. Keane's number was the first number retired in Manitoba Moose history.