Ha compiuto gli studi musicali presso il Conservatorio “F. Morlacchi” di Perugia, sotto la guida di Franco Fabiani, e frequentato i corsi di perfezionamento con Lya De Barberiis, Paul Badura-Skoda, Dario De Rosa e – presso l’Accademia Chigiana di Siena – con Joaquin Achucarro e Katia Labèque.
Ha suonato per importanti istituzioni musicali italiane e straniere: Accademia Filarmonica Romana, Auditorium Parco della Musica e Teatro dell’Opera di Roma, Teatro Regio di Parma, Auditorium dell’Orchestra “G. Verdi” di Milano, Teatro Comunale di Bologna, Festival dei Due Mondi di Spoleto, Ravello Festival, Teatro La Fenice di Venezia, “I concerti del Quirinale” in diretta Rai Radio3, Festival di Noto, Teatro di San Carlo di Napoli, Musei Vaticani. All’estero ha suonato al Conservatorio “P. I. Cajkovskij” di Mosca, Tonhalle e ZKO-Haus di Zurigo, Konzerthaus di Berna, Istituto “F. Chopin” e Collegium Nobilium di Varsavia, Orchestre National du Capitole di Tolosa, Festival van Vlaanderen in Belgio.
Altri concerti in Giappone, Emirati Arabi, Messico, Gran Bretagna, Germania. Come solista ha suonato sotto la guida di importanti direttori d’orchestra quali Romano Gandolfi (Orchestra Sinfonica “G. Verdi” di Milano), Howard Griffits (Orchestra da Camera di Zurigo), Richard Hickox, Claudio Scimone (I Solisti Veneti), Lior Shambadal (Berliner Symphoniker), Andrew Constantine (Nordwestdeutsche Philharmonie).
Dal 1993 suona stabilmente in duo pianistico con Sebastiano Brusco e dal 2000 svolge intensa attività concertistica con l’attore Elio Pandolfi.
Ha collaborato con Vadim Brodski, Renato Bruson, Max René Cosotti, Roberto Fabbriciani, Arnoldo Foà, Fejes Quartet, Corrado Giuffredi, Raina Kabaivanska, Daniela Mazzucato, Quartetto d’Archi del Teatro di San Carlo, Quartetto Kodály, Marianna Pizzolato, Jerzy Radziwilowicz, Desirée Rancatore, Ugo Pagliai.
Sue esecuzioni e registrazioni sono state trasmesse da emittenti nazionali (Rai Radio1, Rai2, Rai Radio3, Rai International, Filodiffusione Canale5) e estere.
Ha partecipato al programma Inventare il tempo di Sandro Cappelletto, con la regia di Angelo Bozzolini, in onda su Rai5.