Johansson began his pro career with Färjestad BK in Sweden. He was drafted 136th overall by the New York Islanders in the 1991 NHL Entry Draft and played in the NHL for the Islanders (1995–96), Pittsburgh Penguins (1996–98), Ottawa Senators (1998–99), Tampa Bay Lightning (1999), Calgary Flames (1999–2000), New York Rangers (2001–02), and Nashville Predators (2002–04). In the 2000–01 season he played with the Swiss club SC Bern and after the 2003–04 season he went back to Switzerland where he signed with Genève-Servette HC and played with them for two seasons. In 2006/07 he returned to Färjestad. In 2007, he signed with Russian Super League team SKA Saint Petersburg. He played there for one season, but was contracted for two seasons (he did not play in the second season). Johansson then signed with Leksands IF of the HockeyAllsvenskan in 2009. However, he only played one game with Leksand before announcing his retirement due to injury.