"We are delighted to have signed such a richly talented and exciting player, who is still only 23.
"A number of other clubs had expressed an interest in him, but Bojan believes joining Stoke City will benefit his career and we have no doubts he will prove to be a wonderful addition to our squad.
"The signing of Bojan, along with the other players we have recruited ahead of the new season, underlines the progress we are making as a Club."
Krkic, 23, scored 26 goals in 120 league appearances for Barcelona. He was born and raised in Linyola, Spain. His father, Bojan Krkic, Sr., was from Serbia and played professionally for Red Star Belgrade.
The Spanish winger has also had loan stints with Italian club AC Milan and Dutch club Ajax.
Krkic is Stoke's fifth signing this summer, following Phil Bardsley, Steve Sidwell, Dionatan Teixeira and Mame Biram Diouf. Manager Mark Hughes added:
"Anyone who knows European football will be aware of him as a player and the fact that he sees his future at Stoke City is really exciting and an endorsement of the Club itself.
"He's desperate to prove himself in the Premier League and we're pleased to be able to offer him that platform.
"The time he spends with the squad in Germany will help him settle in and will give myself and the coaches the chance to take a good look at him."
- Chris Johnson