W 2000 roku zdobył z reprezentacją Czech Młodzieżowe Mistrzostwo Europy i tytuł króla strzelców całego turnieju. W tym samym roku, jego talent dostrzegł po raz pierwszy Gérard Houllier, ówczesny trener Liverpool F.C. Wkrótce potem zagrał na Igrzyskach Olimpijskich w Sydney. W czternastu meczach młodzieżówki strzelił w sumie dziewięć bramek. Wtedy już nie tylko Liverpool chciał go pozyskać. Podobne zamiary mieli trenerzy Juventusu, Interu, Borussii Dortmund czy Wisły Kraków.
Liverpool
Ostatecznie przeszedł do Liverpoolu w czerwcu 2001 roku za kwotę 3,2 mln funtów i stał się przez to najdroższym graczem Baníka Ostrawa. Jednak mimo podpisanego kontraktu nie mógł od razu rozpocząć gry w klubie, bowiem każdy obcokrajowiec zanim zagra w meczu Premier League musi wystąpić w 75% gier swojej narodowej reprezentacji w danym roku. W przypadku Milana nie było z tym większego problemu. Powołanie do seniorskiej reprezentacji Czech dostał w kwietniu 2001 roku, jeszcze przed podpisaniem kontraktu z Liverpoolem. W pierwszym meczu z Belgią strzelił wyrównującego gola i w kadrze reprezentacji pozostał do 2012 roku.
Do Liverpoolu trafił w końcu w grudniu 2001 roku, pół roku po podpisaniu kontraktu. Jednak na swój debiut na boisku w nowych barwach klubowych musiał poczekać aż trzy miesiące, gdyż nie stawiał na niego trener Phil Thompson, który zastępował chorego na serce Gérarda Houlliera. Zagrał kwadrans w meczu z Barceloną. Natomiast w pierwszym meczu, gdy na boisko wybiegł w podstawowej jedenastce i zagrał pełne 90 minut, 14 września 2002, strzelił dwie bramki i Liverpool pokonał Bolton Wanderers 3:2. Z miejsca stał się ulubieńcem kibiców i do końca sezonu grał równie świetnie, strzelając dwanaście bramek. Więcej zanotował tylko Michael Owen. Mimo wszystko Milan nie najlepiej wspomina ten okres. Wychodził na boisko w drugiej połowie meczu i potrafił zmieniać jego przebieg, ale nigdy nie grał w pierwszym składzie. Było to dla niego trudne do zaakceptowania.
Nowy sezon zaczął doskonale, a kibice Liverpoolu wybrali go najlepszym młodym graczem sezonu. Równie dobrze szło mu w kadrze, strzelił prawie połowę bramek swojej drużyny w eliminacjach.
Jednak los nie był dla niego łaskawy. 13 września 2003 w meczu z Blackburn złamał nogę. Po pół roku leczenia trener nie dawał mu zbyt wielu szans. W tydzień po powrocie do gry strzelił gola i kibice uznali go po raz kolejny najlepszym graczem drużyny. Od Mistrzostw Europy 2004, gdzie Milan został królem strzelców turnieju stał się popularny nie tylko wśród kibiców Liverpoolu i reprezentacji Czech - poznała go cała Europa. Z początkiem sezonu 2004/05 w Liverpoolu pojawił się nowy trener, Rafael Benitez. Jak sam później przyznał, rozważał możliwość opuszczenia The Reds i gdyby Gerard Houlier, z którym nie mógł się porozumieć, nie odszedł, to Milan opuściłby drużynę. A chętnych na jego pozyskanie po tym, jak został królem strzelców Mistrzostw Europy, nie brakowało.
13 listopada 2004 w meczu przeciwko Crystal Palace Milan zaliczył swojego pierwszego hat-tricka, a w całym sezonie strzelił najwięcej goli ze wszystkich zawodników (trzynaście). Jednak trener nie doceniał Milana, nie pozwalał mu grać pełnych 90 minut i często zdejmował go z boiska. Prasa doszukiwała się konfliktu między nim i trenerem i stawiała to jako przyczynę ewentualnego opuszczenia przez niego Liverpoolu. A spekulacji co do zmiany barw klubowych było wiele. Łączono go m.in. z FC Schalke 04, Evertonem i West Ham.
Aston Villa
Ostatecznie, 23 sierpnia 2005, Milan przeszedł do Aston Villi za 6,5 miliona funtów[1]. Trzy dni później, w pierwszym meczu w nowym klubie, potrzebował zaledwie dziesięciu minut, aby wpisać się na listę strzelców. Był to jedyny gol w tym spotkaniu, dający Villi zwycięstwo i uświetniający debiut Milana na Villa Park.
Następny sezon dla Baroša nie był już tak dobry. Sezon zaczął grając obok Juana Pabla Ángela, jednakże po krótkim czasie dostał kontuzji i stracił miejsce na rzecz Luki Moore'a i wschodzącej gwiazdy ekipy z Aston Villa - Gabriela Agbonlahora. Trener Martin O’Neill postanowił dać szansę do pokazania się Czechowi przed zimowym okienkiem transferowym. 11 stycznia 2007 roku strzelił wyrównującą bramkę w meczu z Sheffield United, mecz zakończył się wynikiem 2-2. To jednak nie było na tyle wystarczające, aby zawodnik pozostał w klubie.
Olympique Lyon
26 stycznia 2007 roku dołączył do Olympique Lyon prowadzonego przez Gérarda Houlliera. Zawodnik został wymieniony za Johna Carewa, który z Aston Villą podpisał 3,5 letni kontrakt[2]. Baroš debiut w nowym klubie zaliczył 24 stycznia 2007 w meczu ligowym przeciwko Girondins Bordeaux.
18 kwietnia 2007 kwietnia w meczu z Stade Rennais, Baroš został oskarżony o rasistowskie gesty w stosunku do kameruńskiego gracza Stéphane Mbia. 4 maja tego samego roku został uznany za niewinnego rasistowskich zachowań, ale za te niesportowe został zawieszony do końca sezonu.
Portsmouth
W styczniu 2008 Milan przeszedł do angielskiego Portsmouth F.C. Kosztował 7 milionów euro. 30 stycznia zadebiutował w jego barwach w spotkaniu z Manchesterem United. 8 marca 2008 w meczu o FA Cup z Manchesterem United Baroš sprowokował faul w polu karnym polskiego bramkarza Tomasza Kuszczaka, po którym Kuszczak otrzymał czerwoną kartkę. Następstwem tego został podyktowany rzut karny wykorzystany przez Muntariego, a Portsmouth F.C sensacyjnie wyeliminowało Manchester United.
Galatasaray SK
Latem 2008 podpisał 3-letni kontrakt z tureckim klubem Galatasaray SK Stambuł, który zapłacił za niego 4,7 milionów euro, dołączając do swojego byłego kolegi z LiverpooluHarry'ego Kewella. Pierwszy mecz w barwach klubu ze Stambułu zaliczył w meczu z Kayserisporem, grając ostatnie 15 minut meczu. W pierwszych czterech sezonach był ważnym ogniwem swojego zespołu, jednak jesienią 2012 roku nie zagrał ani jednego oficjalnego meczu. 13 lutego 2013 agent Czecha potwierdził, iż jego podopieczny za porozumieniem stron rozwiązał kontrakt z mistrzem Turcji[3].
Baník Ostrawa
18 stycznia 2013 roku napastnik powrócił do swojego pierwszego klubu Baníka Ostrawa[4]. Podpisał on umowę do końca czerwca 2014 roku. Całość jego wynagrodzenia przekazana została na projekt młodzieżowy klubu.
Antalyaspor
Latem 2013 roku przeszedł do Antalyasporu. Zadebiutował w nim 16 sierpnia 2013 w zremisowanym 0:0 domowym meczu z Kayseri Erciyessporem.