21 maja 2003 roku podopieczni O’Neilla po dogrywce (2:3) ulegli prowadzonemu przez Joségo Mourinho FC Porto. Petrow grał w Szkocji przez prawie osiem lat, wystąpił w 264 meczach ligowych, w których strzelił 55 goli.

Po rundzie jesiennej rozgrywek 2006–2007 postanowił zmienić otoczenie i dołączył do swojego byłego trenera O’Neilla w Aston Villi. W tym czasie wystąpił w 185 meczach ligowych, strzelając 9 goli.

Kariera reprezentacyjna W reprezentacji Bułgarii zadebiutował w wieku osiemnastu lat 24 grudnia 1998 roku. W przegranym 1:4 meczu towarzyskim z Marokiem zmienił w 52. minucie Zlatka Jankowa. Pięć lat później, w eliminacjach do Euro 2004, otrzymał opaskę kapitana. Na samym turnieju podopieczni Płamena Markowa odnieśli trzy porażki (bramki 1:9), a Petrow wystąpił w dwóch meczach; zabrakło go w trzecim, gdyż musiał pauzować za czerwoną kartkę. Pod koniec 2006 roku niezadowolony z metod szkoleniowych selekcjonera Christa Stoiczkowa ogłosił zakończenie reprezentacyjnej kariery. Pod naciskiem dziennikarzy i kibiców pół roku później zmienił zdanie;