Sir Frederick Ashton's Romeo and Juliet may be danced to the same Prokofiev score as Sir Kenneth MacMillan's, but beyond that the two versions are completely different. While MacMillan's 1965 production swaggers and bustles with vividly plotted action, Ashton's 1955 version distils the story down to a poetic, almost fairytale narrative – reminiscent at times of the Prokofiev Cinderella he choreographed seven years earlier.

This Romeo and Juliet is rarely seen, but thanks to Peter Schauffuss it is back on the UK stage. And after an absence of nearly two decades, the choreography's virtues are fascinating to see: the fast, fluid pacing of the action, the pure dance invention and the eloquent breathing space given to key dramatic moments – Romeo's horrified comprehension of the forces stacked against him, after Tybalt's death, has never resonated more starkly.

As far as this revival goes, it's a criminal shame that aspects look so cheap: the lighting is bad, the projected scenery blurs over the dancers' faces and Wayne Eagling as the Prince of Verona appears to be wearing a Canadian Mountie's hat. But these are mere details in the face of the ballet's luxury casting, led by Natalia Osipova and Ivan Vasiliev in the title roles.

It was always going to be an issue, having two Bolshoi dancers accommodating themselves to the idiosyncrasies of Ashton's style. Both Osipova and Vasiliev get into difficulties with the slow-melting sensuousness of certain moves, the rhythmic snap of others. Osipova, in her rush to fit in every detail, occasionally raps out the steps too hard and fast.

But the couple's determination to master Ashton has its own heroic quality – and where they succeed, they are transcendent. Osipova flits though Juliet's opening scene with a vulnerable recklessness; in the balcony pas de deux the passion of their dancing scales every romantic climax in Prokofiev's score; and both allow everything to play out in their faces and eyes.

Nor does the deluxe casting end with the lovers. Alban Lendorf – emerging star at the Royal Danish Ballet – is an insouciant, scintillating Mercutio, Robin Bernadet an elegant Benvolio. And while the parade of veteran British dancers filling the character roles at Tuesday's gala was occasionally distracting (Wayne Sleep just couldn't rein in his showman's instincts), Marguerite Porter was a superb Lady Capulet – tense, thwarted, flinching from every touch of her overbearing husband.