W sezonie 2000/2001 spadł z Bochum do 2. Bundesligi, jednak w kolejnym awansował z nim z powrotem do Bundesligi.

W 2004 roku przeszedł do Bayeru 04 Leverkusen. Grał tam do sezonu 2008/2009, a następnie wrócił do VfL Bochum, prowadzonego przez Marcela Kollera. W sezonie 2009/2010 spadł z Bochum do 2. Bundesligi. W 2014 roku zakończył karierę.

W Bundeslidze rozegrał 249 spotkań i zdobył 29 bramek.

Występy w europejskich pucharach Występy w Lidze Mistrzów w sezonie 2004/2005 W sezonie 2004/2005 występował w rozgrywkach Ligi Mistrzów, gdzie jego zespół pod wodzą Klausa Augenthalera pokonał 3:0 Real Madryt, a Freier przebywał na boisku do 83. minuty, po czym został zmieniony przez Daniela Bierofkę. Przegrany 2:4 mecz 2. kolejki z Dynamem Kijów rozpoczął w wyjściowym składzie, a w 77. minucie zmienił go Jermaine Jones. W kolejnym meczach został graczem rezerwowym. W wygranym 3:1 pojedynku przeciwko AS Roma w 67. minucie zastąpił Jermaine’a Jonesa, w zremisowanym 1:1 rewanżu w 86. minucie zmienił Bernda Schneidera. Był też rezerwowym graczem w drugim meczu z Realem Madryt (1:1), kiedy to w 76. minucie wszedł na plac gry za Jacka Krzynówka. W zwycięskim 3:0 meczu z Dynamem Kijów w 86. minucie zastąpił Daniela Bierofkę. W pierwszej jedenastce wystąpił w przegranym 1:3 spotkaniu przeciwko zespołowi Liverpool F.C., kiedy to w 86.