"My footballing future ends now," the 31-year-old winger told a news conference at Barcelona where he has played since July 2000.
"My knee is causing too many problems and I can't play at the level I would wish."
Overmars became the most expensive Dutch player of all time and the most expensive player in Barcelona history when he signed from Arsenal in July 2000 for a fee of around 36 million euros -- a deal which also included his Arsenal team mate Emmanuel Petit.
Overmars' task was to replace Luis Figo, the Portuguese winger who had been poached by Real Madrid, but he failed to produce the sort of eye-catching attacking form he regularly showed at Arsenal and Barcelona told him at the end of last season that he could leave the club.
Overmars said on Monday he would leave without recompense of the one year remaining on his contract.
Barcelona president Joan Laporta thanked him for that gesture, saying: "It's an act of sincerity and respect for the club.
"It's a mark of great dignity for him to say he can no longer player at the level Barcelona require and to renounce his contract."
POPULAR PLAYER
Overmars played for the Netherlands at Euro 2004 in Portugal in June but opted against looking for a new club for the forthcoming season, following Barcelona's decision to let him go.
The popular player made his Dutch international debut against Turkey in February 1993 and represented his country 86 times, making him the third highest-capped Dutch player after Frank de Boer (112 caps) and Edwin van der Sar (89). He scored 17 goals for his country.
He started his career at Go Ahead Eagles before playing for Willem II, Ajax, Arsenal and Barcelona and retires having won the Champions League with Ajax in 1995, three Dutch titles with Ajax, one English title with Arsenal and a string of other honours.
They included a 1998 FA Cup final win with Arsenal in which he scored in a 2-0 victory against Newcastle United as Arsenal completed an English league and cup double.
The arrival of Overmars at Barcelona in 2000 coincided with a lean spell for the club and he could not help the Catalans to a single major title in his four years in Spain.
He scored eight league goals in 31 appearances in a first season that was acceptable rather than spectacular and that proved to be his most successful campaign.
He failed to score in 20 league games the following season, scored six in 26 games in 2002-03 and managed one league goal in 20 games last term.
Overmars becomes the fifth Dutch player to leave Barcelona since the end of last season, following the departures of Patrick Kluivert, Michael Reiziger, Philip Cocu and Edgar Davids.