Blisko medalu był w biegu na 50 km technika klasyczną, który ukończył na czwartej pozycji. Walkę o medal przegrał tam z Jörgenem Brinkiem o 16,2 sekundy. Ostatni medal zdobył na mistrzostwach świata w Sapporo w 2007, gdzie Martin Larsson, Mathias Fredriksson, Marcus Hellner i Anders Södergren zajęli trzecie miejsce w sztafecie. Był też między innymi piąty na dystansie 50 km klasykiem podczas mistrzostw świata w Oberstdorfie w 2005.
Wystartował na igrzyskach olimpijskich w Lillehammer w 1994, gdzie zajął 23. miejsce w biegu na 30 km techniką dowolną. Następnie był czwarty w sztafecie i dwudziesty w biegu na 50 km techniką dowolną podczas igrzysk olimpijskich w Nagano w 1998. Na rozgrywanych cztery lata później igrzyskach olimpijskich w Salt Lake City zajmował 13. miejsce w sztafecie, 27. w biegu łączonym na 20 km i 29. w biegu na 50 km klasykiem. Brał też udział w igrzyskach olimpijskich w Turynie w 2006, gdzie razem z Matsem Larssonem, Johanem Olssonem i Andersem Södergrenem zdobył brązowy medal w sztafecie. W startach indywidualnych był dziesiąty na dystansie 50 km stylem dowolnym, trzynasty w biegu na 15 km klasykiem i piętnasty w biegu łączonym.
W 2012 zakończył karierę.
W 2008 został skazany na karę 16 dni więzienia za przekroczenie prędkości (przy ograniczeniu do 80 km/h prowadził samochód z prędkością 146 km/h).