w ciągu czterech lat rozegrał dla klubu sto szesnaście meczów, w których zdobył dwadzieścia osiem bramek, ponadto na koniec sezonu 2004–2005 (dwanaście goli i jedenaście asyst) został wybrany do najlepszej jedenastki ligi. Od 2005 roku był zawodnikiem Atlético Madryt.

Po dwóch latach gry w Hiszpanii w lipcu 2007 roku – niespodziewanie (kilka dni wcześniej był kandydatem na nowego kapitana Atlético) – za 4,7 miliona funtów przeszedł do Manchesteru City i tym samym dołączył do kolegów z kadry Stilijana Petrowa i Dimityra Berbatowa, który również grają w Premiership. Petrow był jednym z pierwszych nabytków nowego menedżera klubu Svena-Görana Erikssona. W nowej drużynie zadebiutował 11 sierpnia w ligowym spotkaniu z West Hamem United. Pierwsze bramki zdobył 22 września w spotkaniu z Fulhamem. Debiutancki sezon zakończył z 34 ligowymi występami. W październiku 2008 roku doznał kontuzji łąkotki, która wykluczyła go z gry na następne cztery miesiące. W czerwcu 2010 roku Bułgar podpisał kontrakt z Boltonem Wanderers.

14 stycznia 2013 Bułgar podpisał kontrakt z Espanyolem Barcelona, który obowiązywał do końca sezonu. Jeśli Espanyol uniknąłby degradacji, umowa z Bułgarem zostałaby automatycznie przedłużona o rok.