Singer Jai McDowall is the shock winner of ITV's Britain's Got Talent.
The 24-year-old support worker, from Ayrshire in Scotland, overcame his nerves to beat favourite Ronan Parke into second place.
Simon Cowell said: "We said tonight there was going to be a shock result. He wasn't one of the favourites coming in but tonight we could feel he nailed the song. He came in believing that he could win and I think he's a worthy winner."
Judge Amanda Holden said: "I'm not disappointed. Of course I'm thrilled for Jai but I have to say that I really wanted Ronan to win."
The 12-year-old, from Norwich, was a favourite among the judges who praised his "perfect" performance.
But it was McDowall, who sang To Where You Are by Josh Groban, who won the public vote. Asked how he felt, he said: "Absolutely amazing. Absolutely fantastic."
His strong performance earned high praise from the judges. David Hasselhoff summed it up: "You sang beautifully, man."
McDowall has been wracked by nerves, visibly shaking throughout the competition. But speaking immediately after the performance he said the nerves had calmed down "a wee bit", adding: "It's a total dream come true."
He takes home a £100,000 prize and the chance to perform at the Royal Variety Performance in front of the Queen.
Teen boy band New Bounce - Mitchell Zhangazha, 16, Kuan Fyre, 14, MJ Sanneh, 13, and James Anderson, 12 - came third in the competition.