Chelsea Pensioner Colin Thackery has won this year's Britain's Got Talent contest, pocketing £250,000 and earning a place on the bill at the Royal Variety Performance.

The 89-year-old singer admitted he was "astonished" to have won the show. "I don't know what to say," he told hosts Ant McPartlin and Declan Donnelly, as judge Simon Cowell saluted him. "I'm stuck for words, for a change."

After performing Love Changes Everything for the finale, Thackery said he would "die happy" if he had the chance to sing for the Queen. "I served my Queen for 25 years and to think I could sing for her would be the end," he said.

The panel had been full of praise for the performer, who sang Wind Beneath My Wings as a tribute to his late wife in his first audition.

Judge David Walliams told him he was "unbeatable", while Amanda Holden noted he did not want to win for the fame and glamour, saying: "I know that this is because you served your country and I hope tonight that they serve you."

Magician X was runner-up after shocking the judges by revealing he was actually former contestant Marc Spelmann, who appeared in the 2018 series but failed to make it to the final. X had performed in a hood and white mask throughout the show's current run.

But he took off his mask and revealed his true identity at the end of his final performance on Sunday, which centred on the word "Hope".

"It was always about hope and never giving up," he said as the crowd gasped and McPartlin and Donnelly held their hands over the mouths in surprise. "It has been an honour sharing X with you. I am X."

A total of 11 acts competed in the final, with 10 making it through during this week's live semi-finals and one act, dance duo Libby and Charlie, were picked as the judges' wildcard.

The young dancers had stepped in during the semi-finals to replace magicians Brotherhood after they were forced to withdraw from the competition.