George Bernard Shaw's tale of class and language is an unpleasant tale, pleasantly told.

Famously put to film as My Fair Lady, it follows Eliza Doolittle, the flower girl plucked from happy obscurity by voice coach Henry Higgins to be passed off as a duchess.

At the heart of the story is the lack of compassion and the mistaking of manners for genuine humanity, and it's standout performance comes from Jamie Foreman as Eliza's father, a self-proclaimed member of the 'undeserving poor' whose bold and funny speeches give the lie to the idea that class has anything to do with, er, class.

Rachel Barry as Eliza screeches perfectly horrendously and shows extreme comic timing in her first outing as a lady, supported by Higgins' mother (played with a gentle beneficence by Rula Lenska). As Higgins himself, Alistair McGowan deals as effortlessly with the accents as you would expect for an impressionist of his calibre, but his natural playfulness overly softens the professor's brutalness.

This is a smartly-drawn production, well cast and designed, and Shaw's script remains as funny, challenging and enjoyable as ever.

Pygmalion continues at the Theatre Royal, Norwich until Saturday.