Norman ha giocato il suo primo torneo ATP a Stoccolma, nel 1992, a soli 16 anni (dopo aver superato le qualificazioni). Tuttavia le sue apparizioni nei tornei "pro" sono diventate più costanti a partire dal 1995, quando il suo tennis potente fu in grado di competere più frequentemente con i rivali. Destro, dotato di un buonissimo gioco da fondo campo, Norman si adattatava bene sia ai campi in terra che a quelli in cemento.
Nel 1997 vinse il suo primo torneo, a Båstad: quello fu il primo di dodici successi (tra cui il Master di Roma, vinto nel 2000). Nel suo palmarès si contano anche una semifinale agli Australian Open (perse da Evgenij Kafel'nikov) ma soprattutto una finale al Roland Garros (perse in 4 set da Gustavo Kuerten). Entrambi questi traguardi furono raggiunti nel 2000. Tali risultati lo portarono al n. 2 del mondo nel corso di quell'anno.
Successivamente lo svedese ha continuato a giocare a buoni livelli ma continui problemi al ginocchio lo hanno costretto al ritiro prematuro.
Norman ha vinto la Coppa Davis con la Svezia nel 1998, nella finale contro l'Italia giocata a Milano. Lo svedese portò il primo punto alla sua squadra dopo aver sconfitto Andrea Gaudenzi, il quale si ritirò sul 6-6 del quinto set per un infortunio alla spalla.
È poi stato allenatore di Stan Wawrinka dal 2013 al 2017, periodo in cui lo svizzero ha ottenuto i suoi migliori risultati, e poi di nuovo dal 2018 al 2020 e dal 2022.