Moreno began his playing career with Lascaris youth team before moving to Torino in 1987, with whom he made his debut in Serie A in 1994–95 during a 5-1 defeat against A.C. Milan. In the same year, he won the prestigious Torneo di Viareggio with the primavera, before earning two more caps for the first team in subsequent years. Between 1995–96, he collected 11 appearances in Serie A for the granata which culminated with the third ever relegation of the club into Serie B. He played 18 times for the club in the cadets, but was also involved in the Torneo di Viareggio as part of the youth team, lost in the final against A.S. Bari. In August 1997, he signed with Lucchese, again in Serie B. He stayed there for two seasons playing as a starter until the relegation of 1999. At the beginning of 1999–00, he wore the captain's armband for the provincial Tuscan side. Then, in September, he moved in co-ownership to Chievo. He remained there until 2002 and was part of the team that earned the club's first promotion to Serie A in 2001. That season, Moreno was seriously injured and his appearances were limited to just 12. The following season, he never took to the field due to the effects of the injury. In January 2003, he was loaned to Cagliari. In Sardinia, he returned to the field after a two-year stop, disputing all of 2 games in April, before returning to Chievo; where he was transferred indefinitely to Teramo in Serie C1. He played 5 times for the Abruzzi, however, in August 2004 he was attacked by ultras and left the team. He continued his career in Serie C2 with Pro Vercelli and Alessandria, ending his career at age 30.
He began his managerial career in 2007 with the Giovanissimi Nazionale of Filadelfia Paradiso, and led them to a regional title. The following year, he moved to Canavese, and achieved qualification for the knockout phase of the national championship in the same age group. In 2009, he returned to Torino as the manager of the Allievi Nazionali, and in 2012, he became the manager of the Primavera squad. In the 2013–14 season, his squad finished as runners-up in the Campionato Nazionale Primavera, after losing the final 4–3 on penalties to Chievo. The following season, he led Torino to their ninth Primavera title, and their first since the 1991–92 season, after defeating Lazio on penalties. In 2015, he also won the Supercoppa Primavera against Lazio.
Pro Vercelli
On 8 June 2016, he became the new manager of Pro Vercelli in Serie B, with whom he signed a two-year contract. In his first season at Vercelli, he achieved safety from relegation in the penultimate round of the season. On 14 June 2017, he mutually agreed to end his contract with Pro Vercelli.
On 14 June 2017, he was appointed coach of Frosinone. After missing on automatic promotion to Parma on the final matchday of the 2017–18 Serie B season, he won the promotion playoffs, defeating Palermo in a two-legged final, thus bringing back Frosinone to Serie A after a two-year absence. He was sacked on 19 December 2018.
Torino
On 4 February 2020, Longo signed with his former club Torino.