The 19-year-old has signed a three-year contract that includes a €12million release clause.
“Being in England for three years has helped me to mature a lot and to become physically stronger,” he told Barcelona’s official website.
“I’m raring to start and start learning. When I heard Barca were interested in me, that was my priority. I can assure you that I’ll work hard and give everything I can out on the pitch.”
He added on his Twitter account: “(I) would like to give a special mention to all (the) City fans for the support you have given me, which will always stay with me. Thank you all.
“I would like to announce that I will be playing at Barca B for the next three years. It hasn’t been an easy decision to leave Manchester City where I have spent 3 wonderful years.
“But all in all Barca is the best option to continue my career right now.”