The 37-year-old is currently playing for Vissel Kobe in Japan after a glittering career at international and club level that has included stints at Barcelona, Atletico Madrid and Valencia.
"I'm holding (this press conference) to announce that I have decided to end my professional career and that I have decided to retire," Villa told reporters in Kobe, his voice occasionally breaking with emotion.
"I've been thinking about this for a long time. This is the result of discussions I had with my family and people around me... I wanted to retire from football, not be forced to retire from football," added the striker.
Former Man United, Spurs forward Berbatov retires
Villa played in three World Cups and was a member of the Spanish side that lifted the trophy in 2010, and won the European Championships in 2008. He netted 59 times for Spain, a national record.
His silverware also includes a Champions League title with Barcelona, as well as two La Liga wins and a World Club Cup medal.
At Vissel Kobe, he played alongside fellow Spanish legend Andres Iniesta and German striker Lukas Podolski but the presence of the foreign stars has done little to bring success to the ambitious Japanese club.
Vissel Kobe are currently languishing 10th in the J-League after 31 games -- the same position they finished last year.
Villa scored 12 goals in 26 appearances for Vissel.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ