Spain forward Pedro agreed to join English Premier League champions Chelsea from Barcelona, the clubs said on Thursday.
Chelsea will pay 30 million euros ($33.54 million) for the player, three of which will be based on performance, the Spanish champions said on their website.
The length of the contract was not revealed.
"I am very happy to be here. I am very excited to start my adventure at Chelsea and I am here to keep winning titles," Pedro told the club website.
"Thanks to the club and the supporters for giving me the opportunity to put the blue shirt on."
A product of the Catalan club's youth academy, Tenerife-born Pedro made his debut for the Spanish and European champions in a La Liga match against Real Murcia in 2008.
The pacy 28-year-old cemented his place in the first team under coach Pep Guardiola and in 2009 became the first player to score in six different competitions in a calendar year as Barca swept the Champions League, Spanish league and Cup, Spanish and European Super Cup and Club World Cup titles.
Known as "Pedrito" for his diminutive size, he made his first appearance for Spain in a warm-up game for the 2010 World Cup against Saudi Arabia and went on to help La Roja claim their debut global crown in South Africa.
He was also part of the successful Spain squad at Euro 2012 as Spain secured a second consecutive continental crown.
Pedro no longer commands a regular place in the Barca starting line-up following the arrival of Uruguay striker Luis Suarez last year.
Coach Luis Enrique used him mainly as a substitute in 2014-15 and he came on in the Champions League final to set up Neymar to score the third goal in a 3-1 victory over Juventus.
At Chelsea, he will join up with Spain colleagues Diego Costa and Cesar Azpilicueta, as well as Cesc Fabregas, with whom he played at Barca between 2011 and 2014.