After playing several seasons with Mjällby (three years), Stabæk (four) and Anderlecht (three), he played in quick succession for teams in France, Italy, England and Spain, before spending the better part of four years in the late 2000s in Saudi Arabia with Al-Hilal.
In the 2003 summer Wilhelmsson joined R.S.C. Anderlecht in Belgium, being an undisputed starter during his spell and scoring nine top division goals combined in the capital side's 2004 and 2006 league conquests.
In 2006, Wilhelmsson moved to French team FC Nantes. However, on 10 January of the following year, he joined A.S. Roma on loan until the end of the season, when the Italians had the option to buy for €3 millions. He made his Serie A debut on 14 January against FC Messina, but underwent criticism from teammates such as Christian Panucci for his lack of communication on the pitch, a derivative of his poor Italian language skills.