Shanahan, 40, racked up 656 goals and 1,354 points in 1,524 NHL games, making him the league's 11th all-time goal-scorer and 23rd in points, NHL.com reported. The 6-foot-3, 220-pound right wing is the only player in NHL history with at least 600 goals and 2,000 penalty minutes.
He played for the New Jersey Devils, the St. Louis Blues, the Hartford Whalers, the Detroit Red Wings, the New York Rangers and finally for the Devils again, 21 years after the team took him with the second overall pick in the 1987 amateur draft.
"I would like to thank my family and all of the friends who have helped me achieve and maintain my childhood dream of playing in the National Hockey League," Shanahan said in a statement. "I am enormously grateful to all of my coaches and teammates I've had the privilege of learning from and playing alongside of throughout my career."
Shanahan won all three of his Stanley Cups with Detroit, in 1997, 1998 and 2002.