Hamrin jest jednym z najlepszych strzelców w historii włoskiej Serie A – w 400 spotkaniach zdobył 190 goli. Wychowywał się w juniorskich zespołach Huvudsta IS, Råsunda IS i AIK Fotboll. W seniorskiej piłce debiutował w 1953 w AIK, w 1955 został królem strzelców I ligi. W 1956 wyjechał do Włoch i został graczem Juventusu, jednak w Turynie spędził tylko rok. W sezonie 1957–1958 grał w Calcio Padova. W latach 1958–1967 był piłkarzem Fiorentiny, następne 2 lata spędził w Milanie, a karierę na Półwyspie Apenińskim kończył w SSC Napoli (1971). Z Fiorentiną dwukrotnie zdobywał Puchar Włoch (1961 i 1966) oraz triumfował w pierwszej edycji Pucharów Zdobywców Pucharów (1961). Z Milanem w 1968 zdobył scudetto i swój drugi Puchar Zdobywców (w finale zdobył dwie bramki, Milan wygrał 2:0 z Hamburger SV), a rok później Puchar Europy.
W reprezentacji Szwecji w latach 1953–1965 zagrał 32 razy i strzelił 17 bramek. Podczas MŚ 58 rozegrał 5 meczów (4 gole).