Garcia hangs his boots up after a 17-year career which included winning the Champions League title with Liverpool in 2005 when the Reds famously fought back from a 3-0 half-time deficit in the final to beat AC Milan on penalties.
The much-travelled 35-year-old, who scored 30 goals in 121 appearances while at Anfield and won the 2006 FA Cup, also played for the likes of Barcelona, Atletico Madrid, Panathinaikos and, most recently, Mexican side Pumas.
He made 20 appearances for Spain, representing them at the 2006 World Cup in Germany, and was named in UEFA's Team of the Year in 2005.
Garcia made the announcement on his official website, saying: "Today I've decided to retire as a professional footballer, thanks for the interest from the teams that spoke with me in recent weeks, but I think the time has come to end this important chapter in my life and move to the next page.
"To each and every one of the people over my 17-year career that have been with me, have helped me and supported me at every stage, I will be forever grateful."