Zaha was eligible as a free agent after he rejected a £200,000-a-week deal with Palace when his contract expired at the end of June.
The 30-year-old has spent majority of his playing career at Selhurst Park, having come through the club's youth ranks but also had brief spells with Manchester United and Cardiff City.
Zaha made 458 appearances in total for Palace and scored 90 goals while registering 76 assists.
In a farewell message to Palace fans posted on social media, Zaha said: "As I start a new chapter, I want to speak to you Palace fans who mean so much to me.
"We have been through so much together. There are loads of amazing memories that will stay in my head forever and also some really tough times along the way.
"I've been wearing the Palace shirt since I was eight. It's literally been my second skin and I always gave EVERYTHING when I wore it.
"You have all seen me angry and frustrated but you've also seen my hunger and passion and the joy that I take from winning and I hope that is the memory that lives on in the minds of Palace fans.
"I have been blessed to play in front of you and call you family from the day you accepted me. From the bottom of my heart, I'm forever grateful."
Zaha has been capped 31 times by the Ivory Coast national team.