Richards, 22, moved to Bayern's under-19 side in 2018 on loan from FC Dallas, before a permanent move in January 2019. Richards played 23 times for Bayern's U19s, and made 37 appearances for Bayern Munich II.
"I grew up watching the Premier League and grew up of course watching [Wilfried] Zaha, so it'll be cool to spend some time on the field with them [the Palace players] and be a part of this historic club. I'm really excited for it," Richards, who signed a five-year deal, said in Crystal Palace's release announcing the move.
"The kind of project I've seen [attracted me]. 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."
The centre-half appeared 10 times for Bayern's first-team and played 34 games for TSG Hoffenheim in two subsequent loan spells.
"Chris is a hugely talented young player, and he brings a lot of experience at a high level for his age, as well being an established International for the USA national side," Palace chairman Steve Parish said.
"I had the great pleasure of spending some time with him and his family yesterday and I know he will be a great fit for the club and I'm sure will become a firm fans' favourite. Competition can only drive him and our squad on."
Vieira enjoyed an impressive debut campaign at Palace last season and guided them to a 12th-placed finish in the league and their first FA Cup semifinal since 2016.
Palace have played seven friendlies in the lead up to the new season, winning three and drawing two, including a 1-1 draw against Jesse Marsch's Leeds United on Friday.
Following the game against Leeds, Vieira was asked about Richard's arrival and said: "Number of teams that wanted him and he decided to come to us. That is a really strong statement."