Sergio Aguero has retired at the age of 33 due to a heart problem, the Barcelona forward announced in a statement on Wednesday.
Aguero delivered the news at a press conference featuring club president Joan Laporta and the club's first-team players.
Aguero, who starred for Atletico Madrid before becoming a Manchester City great, suffered chest pain in the draw with Deportivo Alaves on October 30, which the club confirmed was down to a heart arrhythmia.
Sergi Barjuan, interim coach at the time, said Aguero told him he was feeling "a little dizzy".
Further tests resulted in Aguero being ruled out for three months to undergo a "diagnostic and therapeutic process".
However, after consultations with specialists, the Argentina international has been told it is too much of a risk to continue playing.
An emotional Aguero said at Camp Nou: "This conference is to communicate that I have decided to stop playing football.
We love you, Kun. 😭😭😭 pic.twitter.com/88dtg9xKJd— FC Barcelona (@FCBarcelona) December 15, 2021
'Best thing to do'
"It's a very difficult moment. The decision I've made, I've taken it for my health, because of the problem I had a month and a half ago. I was in good hands with the medical staff, who did their best, who told me the best thing would be to stop playing.
"So, 10 days ago I made that decision, but I want to tell everyone I did everything to have some hope, but there wasn't very much."
Aguero joined Barca on a free transfer from City in July, but a calf injury meant he did not make his debut until October.
He made five appearances in all competitions for Barca, playing just 166 minutes, with his sole goal coming in the form of a late consolation in a 2-1 Clasico defeat to Real Madrid.
Aguero scored a club-record 260 goals in 390 appearances in a trophy-laden decade at City, including their famous last-gasp winner against QPR in 2011-12 to clinch the club's maiden title in the Premier League era.