Sherlock’s Steven Moffat has promised that new character Charles Augustus Magnussen is an “outstanding villain” in the series which returns on New Year’s Day on BBC One.

Magnussen is based on the character of Charles Augustus Milverton in the original Sir Arthur Conan Doyle novels and will be played by Danish actor Lars Mikkelsen.

Co-creator Mark Gatiss told Digital Spy “Lars is a stunning actor and the nicest man. He's a delight to be around. He's brought something really interesting and new to the show.

"We've talked about doing Charles Augustus Milverton for quite some time. He's a proper big realised baddie. His original title was The Worst Man in London."

Moffat said "He allowed us to move the character on. He's now Danish. Like everything in Sherlock, we take the original and move it around slightly. I think he's an outstanding villain. He will give you proper chills and make you shrivel at times."

Sherlock star Benedict Cumberbatch said of the character "He is so measured and precise - he is like a shark, a terrifyingly perfect predator of our age.

"His means and methods are chillingly everyday in our culture. He's a smart creation, very real and not fantastical.

"He's got a foreign perspective on the English culture which Holmes so perfectly personifies and the fact that he fights on the side of the angels. He sort of reduces what Holmes protects."