In den darauffolgenden Jahren konnte der in Östersund lebende Larsson seine Leistungen vor allem in Sprintwettbewerben weiter steigern. So qualifizierte er sich mit Platz vier im Sprint in Reit im Winkl kurz vor der Nordischen Skiweltmeisterschaften 2005 für die schwedische Nationalmannschaft und startete bei der Weltmeisterschaft in Oberstdorf. Dort erreichte er beim Sprint, der in der klassischen Technik ausgetragen wurde, das B-Finale und belegte im Endresultat den sechsten Platz. Mit der schwedischen Staffel wurde er Siebenter. Dieses Resultat konnte die schwedische Mannschaft bei den Olympischen Winterspielen 2006 in Turin deutlich verbessern. Larsson, der als Startläufer der Staffel an den Start ging, gewann mit der schwedischen Mannschaft die Bronzemedaille und somit seine erste internationale Medaille.