In the season 1982-83, after having spent 10 years at Rome's Opera, he joined Aterballetto, under the artistic direction of Amedeo Amodio, and performed all the choreographies of the company's repertoire. The most significant collaborations of this period were the ones with Alvin Ailey, Glen Tetley, William Forsythe and Jennifer Muller. He also danced in many works by George Balanchine and Leonide Massine.
In 1990 he created his first work Sei in Movimento set to music by J.S. Bach, which made its debut at the Teatro Sociale in Grassina.
In the season 1992-93 he left Aterballetto and became a freelance choreographer. During this period, he began an intense collaboration with the Balletto di Toscana, a company in those years of many Italian choreographers.
The most important collaborations thereafterwere with the following international companies: English National Ballet London, Ballet National Marseille, Stuttgarter Ballett, Deutsche Oper Berlin, Staatsoper Dresden, Ballet Teatro Argentino, Balè da Cidade de Sao Paulo (Brazil), Ballet Gulbenkian Lisbon, New York City Ballet, State Ballet Ankara and Ballet du Capitole Toulouse. He also created ballets for many Italian companies including the Ballets of Teatro alla Scala Milan, Opera Rome, Arena Verona and Teatro San Carlo Naples.
In creating new works he collaborated with many artists such as Claudio Parmiggiani, Fabrizio Plessi, Bruno Moretti, Elvis Costello, Danilo Grassi, Guglielmo Capone, Millar & Swandale, Roberto Tirelli, Fabrizio Montecchi, Nicola Lusuardi, Paride Bonetta, Helena Medeiros, Paolo Calafiore, Carlo Cerri, Beni Montresor, Massimo Castri and Lucia Socci.
In 1997 he became Artistic Director and Principal Choreographer of Compagnia Aterballetto under the chairmanship of Federico Grilli with whom he collaborated to build a new repertoire and a new company. In 2016, he directed the ballet company of the Teatro alla Scala.