He started his coaching career as youth coach for Virescit Boccaleone in 1991, and then as head coach and technical director of amateur clubs Stezzanese and Verdello. He was appointed head coach of Alzano Virescit in January 1997, and guided the club to a Serie C1/A championship title in 1999, with consequent promotion to Serie B. Alzano's tenure in the Serie B league lasted only a lone season, as his side was relegated in 1999–2000 and Foscarini himself was sacked later in March 2001 after failing to bring his side back to the top. Foscarini then served as head coach of Serie C2 club Rimini, where he failed to win the promotion playoffs with the Romagna side.
In 2003, he was appointed youth coach of Cittadella, being then promoted as head coach later in July 2005, after Rolando Maran left to become Brescia's new boss. In 2008, Foscarini guided Cittadella to a second Serie B promotion in the whole club history, after entering the promotion playoffs as outsiders and then defeating Cremonese in the final. He was confirmed for the club's first campaign back to the Italiansecond division in 2008–09, in which he managed to save Cittadella from relegation. Cittadella's second Serie B season in 2009–10 proved to be far more successful, as Citta' found themselves well into the battle for a potentially historical promotion to the top flight, qualifying for the promotion playoff, then lost to Brescia in the semi-finals. In 2010–11, Cittadella maintained their place in the second division, ending the season in 14th place and ensuring him a one-year contract extension. He left Cittadella by the end of the 2014–15 season, after failing to save his team from relegation to Lega Pro.
In October 2015, Foscarini returned into management as the new head coach of Serie B strugglers Pro Vercelli, guiding them to safety by the end of the season. Not confirmed by Pro Vercelli, in June 2016 he accepted an offer from Livorno with the goal to bring the recently relegated Lega Pro club back to Serie B.
He was appointed manager of Serie B club Avellino on 3 April 2018. After saving Avellino from relegation by the end of the season, he was not confirmed due to the club's exclusion from the league because of administrative issues.