The eight-cap United States international spent the majority of the past two seasons on loan with Hoffenheim, where he made 34 appearances.
He was pushed further down the central-defensive pecking order at Bayern following the arrival of Matthijs de Ligt from Juventus earlier this month.
Palace confirmed on its official website on Thursday (AEST) that Richards has put pen to paper on a long-term contract at Selhurst Park.
Patrick Vieira's side is reported to have paid an initial £8.5million (€10m), potentially rising to £11m (€13m), for the 22-year-old.
Richards, who departs Bayern having made 10 first-team appearances after joining from FC Dallas in 2018, is looking forward to a new challenge in England.
"I grew up watching the Premier League and grew up watching [Wilfried] Zaha, so it'll be cool to spend some time on the field with and be a part of this historic club," he said.
"I'm really excited for it. It's a lot of young players but also young players who have a lot of fight. Palace is a club that seems like they're always fighting."
Richards was given a permanent contract by Bayern after impressing on an initial trial basis four years ago, but he was unable to become a regular in the senior side.
"Chris came to the FC Bayern Campus at the age of 18. He demonstrated his talent in his first year when he played for our reserves," Bayern sporting director Hasan Salihamidzic said.
"That's why we signed him from FC Dallas, and Chris went on to develop really well on loan at Hoffenheim.
"Now his big desire is to succeed in the Premier League. We wanted to make that possible and we wish him all the best at Crystal Palace."
Richards is Palace's fourth signing of the window after Sam Johnstone, Malcolm Ebiowei and Cheick Doucoure.