In June 1999, he received his first call-up to the Bulgarian national team for a Euro 2000 qualifier against England. He came as a substitution at the place of his idol Hristo Stoichkov. However, it proved to be an inauspicious start to his international career; he was sent off for a second yellow card just eight minutes after coming on as a substitute. Petrov cried while he was leaving the pitch. Petrov was the key player in Bulgaria’s unsuccessful Euro 2004 participation, excelling in all three games and scoring Bulgaria’s only goal at the finals; a penalty against Italy in Bulgaria’s 1–2 loss. On 2 September 2006, Petrov played a crucial role in the Bulgarian national team’s Euro 2008 opening qualifying game against Romania in Constanţa, nailing two goals in two minutes to equalize from 2–0 in the last minutes of the game. This was seen as a remarkable comeback. He also went on to score against Slovenia (in a 3–0 win) and the Netherlands (in a 1–1 draw). His performances in the 2006 qualifying campaign earned him the 2006 Bulgarian Footballer of the Year award. On 7 September 2010, Petrov earned his 80th cap for Bulgaria in the 0–1 home loss in a UEFA Euro 2012 qualifier against Montenegro.