Manchester United striker Berbatov made 74 appearances for his country and scored a record 48 goals.
However, his performances in the team's failed World Cup qualifying campaign drew widespread criticism in his homeland.
Speaking at a press conference in Sofia, he said: "I came to the decision that as of now I have retired from the national team.
"It wasn't a decision I took lightly and I have reconsidered several times.
"Everything has a beginning and an end and that is today."
The 29-year-old added: "I feel exhausted and now there are many guys who can emerge from my shadow.
"For them the moment has come.
"You should always know when to stop.
"I haven't discussed it with my club team.
"I guess it will come out in England and Sir Alex (Ferguson) will call me."
Berbatov broke Bulgaria's all-time goalscoring record previously held by Hristo Bonev with two in November's friendly against Malta.
But he has struggled to make an impact at Old Trafford following his £30.75million move from White Hart Lane in August 2008, scoring just 26 goals in two seasons.