This mash up of Conan Doyle's detective and Dickens' festive tale returns for a second year to Marylebone Theatre - a stone's throw from Baker Street.

Mark Shanahan writes and directs a show that veers from Blackadder-ish humour, to Dickensian carols and ghosts, while offering a genuinely knotty case for the great consulting detective to solve.

It shouldn't work, but it does, in a cheerful Christmas pudding of an evening that mixes sugar and spice - aided by a hard-working six-strong cast who take multiple roles, and handle the tonal shifts with aplomb.

Ham & High: Ben Caplan as Sherlock and Kammy Darweish as ScroogeBen Caplan as Sherlock and Kammy Darweish as Scrooge (Image: Alex Brenner)

Ben Caplan's morose detective has hung up his deerstalker and is haunted by the ghost of arch enemy Moriarty, who has just teetered over the Reichenbach Falls.

But his existential crisis is put on hold when a grown up Tiny Tim, now Dr Cratchit, (Devesh Kishore, excellent) presents him with a locked door mystery - including a missing diamond, and the strange death of his benefactor Ebenezer Scrooge.

Kammy Darweish's gloriously ebullient Scrooge appears in both flashback and as a ghost to remind us of the former miser's uplifting redemption.

Practicing the old teacher's adage of 'don't smile 'til Christmas,' Caplan's Sherlock undergoes a similar transformation as he works the case, turning from morose Bah Humbug loner to earn a seasonal rapprochement with Dr Watson, (Richard James) via a brush with his old frenemy Irene Adler.

Ham & High: Kammy Darweish as Scrooge and Ben Caplan as Sherlock Kammy Darweish as Scrooge and Ben Caplan as Sherlock (Image: Alex Brenner)

Jessica Hern, Rosie Armstrong and Richard James get the best of the cartoonish humour with amusing turns including a wide-eyed Dickensian urchin, a goose farmer with as keen an eye for detail as Holmes, and a creepy landlady.

To pick holes, the show could perhaps do with a little more shivery menace to leaven the jolly mix, and it's directed at such pace that the case itself feels somewhat rattled through so it's hard to follow the breadcrumbs of plot.

But it's all played in the beautiful surroundings of Grade II listed Rudolf Steiner House at a venue that is staging quality drama at off West End prices and deserves support.

A Sherlock Christmas Carol runs at Marylebone Theatre, 35 Park Road, NW1 until January 7.