The son of a Parmesan Moto Guzzi distributor, Guareschi began his racing career in 1988 at the age of 17. He raced for the Cagiva factory racing team in the 125 cc Italian national championship alongside his teammate and future world champion, Valentino Rossi. Guareschi progressed to the 600 cc Italian national championship where, he finished in third place in three consecutive seasons between 1992 and 1994. In 1995, he won the Italian Supermono national championship for single-cylinder motorcycles aboard a Yamaha SZR660. Guareschi made his international racing debut in 1996, competing in the European Supersport Championship for the Italian Belgarda-Yamaha team. He secured three podium results and finished in fifth place in the championship. In 1997, he competed in the Supersport World Championship, winning three races and narrowly losing the championship by one point to Ducati rider Paolo Casoli. He repeated as runnerup in the 1998 Supersport World Championship, this time to Suzuki rider, Fabrizio Pirovano. In 1999, Guareschi and the Belgarda-Yamaha team fielded a Yamaha YZF-R7 in the Superbike World Championship, where he secured one podium result with a third place at the A1-Ring in Austria, and finished the year ranked tenth in the world championship. In 2000, he was joined on the Belgarda team by Noriyuki Haga. Guareschi scored another podium result with a third place at Phillip Island in Australia, but dropped to twentieth in the season final standings. Guareschi joined the Ducati factory racing team in 2001, competing aboard a Ducati 748 in the Supersport World Championship and finishing the season in sixteenth place. After the 2001 season, Guareschi stopped racing to become the development rider for the Ducati factory racing team's new MotoGP entry, the Desmosedici. He raced one final time, entering the Monzaround of the 2004 Supersport World Championship, where he finished in eighth place. Guareschi continued in his role as Ducati's chief development rider until November 5, 2009, when he was named as team manager of the Ducati MotoGP team, succeeding the Honda-bound Livio Suppo. At the end of the 2013 MotoGP season, Guareschi resigned his position with Ducati to take on the role of team manager for Valentino Rossi's Sky Racing Team by VR46 in the Moto3 category. He left the team in September 2014.