Holmgren, der für den Södermalms IK startete, nahm von 1955 bis 1984 an nationalen Rennen teil und trat international erstmals in der Saison 1965/66 in Erscheinung. Dabei gewann er zwei Rennen über 500 m bei einem internationalen Wettbewerb in Davos. In der Saison 1967/68 siegte er erneut in Davos über 500 m und wurde in Grenoble bei seiner einzigen Teilnahme an Olympischen Winterspielen Achter über diese Distanz. In der Saison 1968/69 siegte er bei der 3-Bahnen-Tournee in Inzell im Sprint-Mehrkampf und errang in Innsbruck jeweils den zweiten Platz über 500 m und 1000 m. In den folgenden Jahren kam er bei der Sprintweltmeisterschaft 1970 in West Allis auf den 17. Platz und bei der Sprintweltmeisterschaft 1973 in Oslo auf den 23. Rang. Seine beste Platzierung bei schwedischen Mehrkampfmeisterschaften erreichte er im Jahr 1973 mit dem fünften Platz im Sprint-Mehrkampf.