The 32-year-old has put pen to paper on a three-year deal with the Premier League champions.
"I am very happy, and really looking forward to the start of pre-season and performing well to help the team," Caballero told City's official website.
"This is a new challenge and a new league for me. I have been doing well in the previous years and my goal is to go on and hopefully perform at the same level for City.
"I know I am coming to a big club with a very good goalkeeper. City already have a great goalkeeper in Joe Hart, but I will try and compete for the number one spot. I will do my best in the training sessions."
Caballero played under current City manager Manuel Pellegrini at Malaga, where he made 126 appearances in three seasons.