Nell'ottobre del 2000 torna al Torino in cambio di Roberto Maltagliati, dove rimane per tre stagioni da titolare con 86 presenze e 2 reti, conquistando la promozione al termine del campionato di Serie B 2000-2001. Svincolatosi dai granata al termine della stagione 2002-2003, si trasferisce al neopromosso (15 presenze) e da gennaio alla Fiorentina in Serie B dove gioca 15 volte e realizza un gol. Con i viola ottiene la promozione in Serie A, dove totalizza 21 presenze, prima di essere ceduto al in Serie B e totalizza 59 presenze con 2 gol tra il 2005 e il 2007. La stagione 2006-2007 è l'ultima in Serie B, come capitano degli abruzzesi allenati da Davide Ballardini e in seguito da Aldo Ammazzalorso e Gigi De Rosa, che non evitano la retrocessione in Serie C1.