As crowd-pulling operatic divas go, most of the attention goes to the sopranos. But a select number of mezzos have the same kind of following, and Latvia's Elina Garanča is high on that list. There are just a few roles where the mezzo is the main character of the opera (many of the others are "witches and bitches", as Garanča puts it), and the big one of those is Carmen. Garanča has made a signature role of Carmen in recent years, performing it at the Met and all over Europe, and last night's Barbican audience gathered for a taste of this, prefaced by a selection of arias from more obscure operas.

Rather than being a straight recital, the programme allowed for an orchestral interlude between each aria, presumably in order to allow Garanča to rest her voice and make the best of each number. Broadly, this was successful: it meant that we heard less of her than we might have expected, but with the voice in the best possible shape. The evening got off to a rocky start, however, with Glinka's overture to Ruslan and Ludmilla. It was energetic enough, but conductor Karel Mark Chichon didn't quite have the LSO under full control, with an extremely bass-and-brass heavy balance and timings not quite clicking into place.

All that was soon forgotten when the tall, elegant figure of Garanča entered the hall to open with Joan of Arc's aria Yes, the time has come from Tchaikovsky's The Maid of Orleans, a fine piece of characterisation balancing powerful resolve against an almost (but not quite) equally strong impulse to stay happily in her pastoral home. Garanča displayed the vocal qualities that have made her a star, and continued to do so throughout the evening: technically, this is a voice close to perfection. The timbre is warm, her phrasing follows the vocal lines smoothly with lilt, and every note is hit in the middle with a bare minimum of vibrato to add a touch of colour. Most of all, dynamic control is flawless across Garanča's whole register: she can even throw in a smooth crescendo in the lowest notes and still make it audible above a full symphony orchestra, unprotected by an orchestra pit. This wasn't a concert full of showy pyrotechnics, but in one of the encores, there was a sustained low trill that would have been well beyond the ability of virtually anyone else.

Great operatic characters build over the course of an evening, and in this kind of concert format, you can't really replicate that process. Still, it was good to see a first half programme that steered away from the usual succession of well known show tunes and gave us tasters of unknown works. Garanča made a decent fist of potraying the emotions in each one, from Joan's dilemma to the burgeoning of Delilah's love in Saint-Saëns's Samson et Dalila to the wistful love of queen for commoner in Gounod's La Reine de Saba. I've been glad to see the repertoire widening in recent years, and I hope that we'll be seeing increasing numbers of works that have faded into obscurity.

There were two highlights amongst the orchestral numbers. French Grand Opera thrives on inserting divertissements into the middle of an opera, but it's unusual to find a violin concerto thrown in - yet that's more or less what Massenet did in the Méditation in his opera Thaïs. It was played beautifully by the LSO's leader Gordan Nikolitch.

The other orchestral highlight was the introduction to the second half of the concert, in which this geographically mixed programme crossed the Pyrenees into Spain. Whatever the merits of Carmen, its Spanishness is distinctly suspect. Before it, we heard a dose of the real thing in a set of three marches from genuine Spanish composers. Pascual Marquina Narro may not be a household name in classical music circles, but his España cañi is instantly recognisable as the inspiration for a hundred movie scores for anything Spanish or Mexican, and Manuel Penella's pasodoble El gato montés is the true sound of the bullfight in a way that Bizet never quite managed. The LSO performed them with gusto - a treat for lovers of Iberia.

There were high expectations of Garanča's Carmen, and she did not disappoint. We heard both versions of the Habañera (I was interested to discover that the famous one sung today was part of a Bizet rewrite), a shortened Seguedilla, the scene where Carmen contemplates the evil fate that the cards tell her is in store, and the Chanson bohème from Act II. The quality of the singing continued to be marvellous throughout the evening, and I liked seeing Garanča get steadily more into character - although I had a sense that she was enjoying the whole thing just a little too much - the happy and flirtatious side definitely won out over the enigmatic and passionate.

There was a huge ovation at the end, and we got a generous set of encores, most notably Mexican composer Agustín Lara's nostalgic Granada. When I next get the chance to see Garanča in an opera house, I'll be grabbing it.