The 25-year-old centre-half agreed terms on Friday, with a medical scheduled for Sunday, and is set to sign a five-and-a-half-year contract at the Etihad Stadium.
His arrival comes amid a string of injuries that have disrupted Pep Guardiola's defensive plans, including recent setbacks to Ruben Dias and Josko Gvardiol in a 1-1 draw with Chelsea, while John Stones continues his recovery from a December leg injury.
Guehi's signing was reportedly contested by Liverpool and Arsenal, and the defender had considered staying at Palace for the final six months of his contract to secure a significant signing-on bonus.
Manchester City's persistence ensured they successfully brought him in, with Guardiola describing the move as a way to "plug a major loophole" in defence as the club competes for silverware on four fronts this season.
The Etihad side also welcomed Antoine Semenyo from Bournemouth for £64 million. The forward made an immediate impact, scoring twice and assisting in his first two appearances.
Meanwhile, 20-year-old Max Alleyne has been recalled from his loan at Watford after impressing in three consecutive starts against Brighton, Exeter City, and Newcastle.
"We transferred for the fact to bring back Max (Alleyne). The rest, we'll see. Normally when you sign a player it's not just for the three months, two months, it's for years. And after the club has to decide this is the player for years," said Guardiola.
"When we brought (Antoine) Semenyo, because we've had problems from the wingers from day one and the chance that maybe we could do it and the club can afford it for the release close. So Antoine came for years, not coming to solve a short problem.
"And this is the best way. So when you have injuries, like what happened now in one department like in central defenders, they don't come for just until the players come back.
"Last season for example, (Abdukodir) Khusanov or Vitor (Reis) - especially Khusanov - came from 21 years old for many, many years. So that is the reason why."