When the final whistle blew on Wednesday night's historic semi-final victory over Germany, Spain's players could not be happier. Well, most of Spain's players. There was one exception: disappearing down the tunnel, Pedro Rodríguez was still furious with himself. He had been withdrawn five minutes before, apologising to Fernando Torres as he departed, but the anger had not subsided. Nor had the recrimination, the self-flagellation.

Spain had reached their first ever World Cup final but Pedro had wasted the night's best opportunity. Worse, he had failed to lay a simple goal on a plate for Torres, the striker who so desperately needed one – and he could not forgive himself. "It was a terrible mistake, I got everything badly wrong," he said.

"I didn't see Torres alongside me – I was so focused on the goal. When I cut inside, the ball got left behind and I lost the chance. I was overconfident," Pedro continued, the normal smile, incisor edging its way across his front teeth, gone. Forget celebrating, there was sadness in his eyes, shame. So much so that when Vicente del Bosque came through a few minutes later, the first thing Pedro's interviewer said was: "Mister, you're going to have to have a word with Pedro."

The response spoke volumes about Del Bosque – and about Pedro. "No pasa nada," the coach said, "the mistake doesn't matter. He did what he thought was right because he always turns back like that. He had a great game."

Pedro had given Spain the natural width and pace lacking before, just as he had against Paraguay with his shot that rebounded off the post for David Villa to score the winner. And he's entitled to be confident; he was certainly entitled to think the move would come of. So far in his almost absurdly short yet successful career, everything else has. "I don't know how it's happened," he says. "It must be because so many people have prayed to the Virgin of the Candelaria for me."

Two years ago, when Torres was celebrating his Euro 2008 winner, Pedro too was celebrating. Not a European Championship for Spain but promotion from the Third Division for Barcelona Atlètic, the club's youth team, coached by Pep Guardiola. A third division that's more like a seventh or 17th – below La Primera comes Segunda A then Segunda B, split between four regional, 20-team groups. Then comes La Tercera – all 17 divisions of it.

As Guardiola is fond of reminding Pedro, he went from Cassà de la Selva to the European Cup final in a year. And from Cassà de la Selva to the Club World Cup in 18 months. And now from Cassá de la Selva to the World Cup final in two years. Cassà de la Selva is the home of UD Cassà, a third division team whose "stadium" holds barely a thousand – the only team to beat Barcelona Atlètic home and away in their promotion year.

Pedro is so small that when he made his debut for CD Raqui in Tenerife, where his dad still works in the local petrol station, his nickname was "mascot". He arrived at Barcelona in August 2004 two days after his 16th birthday but by 2007 technical staff recommended he be released. That was when Guardiola arrived and tried the striker on the wing. Thirty-seven games and promotion followed. Then, with the first team, a world record as the only player to score in five different competitions in a single year followed that.

Pedro didn't touch the ball when he came on as a late sub against Manchester United in Rome but he won a treble. Zlatan Ibrahimovic's arrival suggested he would not play but he overshadowed the Swede, scoring the second against Real Madrid at the Bernabéu to virtually clinch the title. By the end of the campaign he had scored 23.

A World Cup call-up was still a surprise. Pedro had never played for Spain before – now he has a key role in the country's best ever tournament.

"There's something wrong with him," says Xavi. "It's not normal to achieve in a year what the rest of us have taken an entire career to do."

"Víctor Valdés says I've got a flower I don't know where," Pedro smiles. Having flora protruding from your rear end is a Spanish way of saying you're lucky.

It is not luck. After his Bernabéu goal, Guardiola insisted: "It's time people talked seriously about Pedro. For us he is vital, fundamental. He always exceeds expectations and deserves everything that is happening to him."

Del Bosque agreed but, as the last one in, Pedro was stuck with the No2 – no shirt for a creative attacker. Luckily, Raúl Albiol agreed to swap, giving Pedro No18.

It was not the first time they had changed his shirt. One day, entirely without warning, he found out that the name on his Barcelona shirt had changed from Pedrito – little Pedro – to plain Pedro. The club believed he had come of age. Guardiola was not pleased. "If Pedro was Brazilian he'd be called Pedrinho," he said, "and we wouldn't have the money to sign him."

But Pedro isn't Brazilian, he's Spanish. And he's playing in a World Cup final.