Gustav-Erik Larsson est un coureur cyclistesuédois né le à Gemla, dans la commune de Växjö. Il fait ses débuts professionnels en 2003 au sein de l'équipe Fassa Bortolo.
Après une saison 2003 muette, il prend part aux Jeux olympiques en 2004 et termine la course élite 72e, à 10 minutes du vainqueur, Paolo Bettini. Il retombe dans l'anonymat en 2005 et change d'air l'année suivante. Il signe en France, à la Française des jeux.
Il connaît pour la première fois un grand tour : le Tour d'Italie et obtient lors du contre-la-montre de la 11e étape la 8e position. Il combine ses points forts lors du contre-la-montre en côte de la Route du Sud, où il obtient la dernière marche du podium avant de remporter finalement le titre national du contre-la-montre. Moins d'une semaine plus tard, il est sélectionné pour le Tour de France. Larsson se fait une nouvelle fois remarquer lors d'une épreuve chronométrée où il finit cinquième du chrono de Rennes. Il ne reste qu'un an dans la structure de Marc Madiot et rejoint une équipe suédoise qui vient d'acquérir une licence ProTour : Unibet.
Ses différents résultats remarquables sont une troisième place de l'Eneco Tour ainsi qu'au Duo normand en compagnie de Víctor Hugo Peña et reconquiert son titre national du contre-la-montre. Bjarne Riis désire profiter de ses services et le recrute dans l'équipe CSC-Saxo Bank.
2008-2011 : aux côtés de Bjarne Riis
Lors de l'année 2008, il confirme une énième fois supplémentaire ses excellentes aptitudes dans domaine du contre-la-montre ; il remporte la médaille d'Argent lors des Jeux olympiques d'été à Beijing et termine 5e des championnats du monde remportés respectivement part Fabian Cancellara et Bert Grabsch. Il gagne au Tour du Danemark et au Tour de Pologne, lors d'un contre-la-montre par équipes pour cette dernière course. Le seul échec de cette saison-là fut qu'il perde son titre national.
En 2009, il participe à la démonstration collective de son équipe lors de Liège-Bastogne-Liège, où son coéquipier Andy Schleck lève les bras. Il prend part pour la seconde fois de sa carrière à la Grande Boucle. Après avoir raté de peu le top 10 de l'étape de Monaco, il achève à la quatrième position le contre-la-montre d'Annecy qu'a remporté le vainqueur final, Alberto Contador. Larsson gagne le Tour du Poitou-Charentes après avoir notamment devancé de 25 secondes David Le Lay, lors du contre-la-montre de la troisième étape. Il bute une nouvelle fois contre un Fabian Cancellara (son coéquipier chez Team Saxo Bank) invincible lors de mondiaux de Mendrisio. Il prend tout de même la médaille d'Argent et devance des coureurs confirmés comme Marco Pinotti ou Tony Martin.
Le , il échoue dans sa tentative de battre le record de l'heure détenu par l'Australien Rohan Dennis avec 52,491 kilomètres. Larsson ne réalise que 50,016 kilomètres à Manchester[8].