Dopo aver giocato per breve tempo in Serie D con la Pro Sesto[1], frequenta il Liceo Scientifico "Volta" di Milano e si diploma all'I.S.E.F..In seguito insegna educazione fisica nella scuole milanesi, in particolare il Gonzaga ed il Leopardi, e nel tempo libero allena nel settore giovanile del Centro Schuster, storica società milanese che opera sotto l'egida della diocesi. Successivamente lavora come tecnico di settore giovanile per Abbiategrasso, Monza, Como ed ancora Monza.[senza fonte] La sua prima esperienza come tecnico di prima squadra è sulla panchina del Corsico, in Serie D, che porta al secondo posto. Il dirigente Caravatti lo vuole alla Pro Patria[senza fonte] in C2 per la stagione seguente 1995-96; i biancoblù arrivano al quinto posto finale che vale i play-off, dove affrontano il Lumezzane, venendo poi eliminati. L'anno successivo passa in C1 al Saronno del presidenteEnrico Preziosi, il quale lo porta successivamente al Como nel 1997-98, per passare poi al Lumezzane nel 1998-99 e, per tre stagioni, al Varese, sempre in C1 dove si piazza 4º, poi 10° ed infine 6°.
Esperienze in Serie B
Nel 2002 passa in Serie B alla Ternana, appena ripescata in cadetteria dopo il fallimento della Fiorentina. La squadra conclude la stagione al 7ºposto. Nell'annata successiva, il girone di andata termina al primo posto in coabitazione con l'Atalanta. Nel girone di ritorno, però, la Ternana ha risultati negativi e Beretta viene esonerato e sostituito da Bruno Bolchi dopo la sconfitta nello scontro diretto contro la Fiorentina[2]. Bolchi non riuscirà a raddrizzare le sorti della squadra umbra che terminerà la stagione 2003-2004 7º in classifica a 4 punti dalla Fiorentina, promossa in A dopo lo spareggio col Perugia.
Esperienze in Serie A
Nel 2004 debutta in Serie A con il Chievo, con l'obiettivo di portare i gialloblù alla salvezza. Nella prima parte di stagione la squadra è nelle parti alte della classifica. Nella seconda parte la squadra ha un periodo di crisi e di risultati negativi e a 3 partite dalla fine, la società, dopo la sconfitta in casa contro la Fiorentina, decide di esonerarlo[3] e di assumere l'ex difensore gialloblu Maurizio D'Angelo (che poi condurrà il Chievo Verona alla salvezza).
Nell'estate2005 è assunto dal Parma. L'esperienza emiliana parte negativa: la classifica del girone d'andata è deficitaria ed il tecnico deve convivere periodicamente con le voci che lo vogliono esonerato; la squadra si salva con quattro giornate di anticipo. La salvezza si trasformerà in qualificazione alla Coppa UEFA dopo gli eventi di Calciopoli.[senza fonte]
A fine stagione lascia gli emiliani per accasarsi al Siena[4], che conduce ad una difficile salvezza nella stagione 2006-2007. Esonerato e sostituito da Andrea Mandorlini alla guida della squadra toscana, torna sulla medesima panchina nel novembre del 2007[5][6],con l'arduo compito di salvare nuovamente la squadra senese che al suo arrivo è fanalino di coda della Serie A, con soli 9 punti frutto della precedente gestione di Mandorlini (1 vittoria e 6 pareggi) e ci riesce, portando la squadra a salvarsi con 3 giornate di anticipo rispetto alla chiusura del campionato vincendo per 1-0 contro la Juventus, ottenendo inoltre il miglior risultato sportivo nella storia del Siena con 44 punti totali (di cui 35 in 26 partite della sua gestione). Da ricordare il pareggio a San Siro contro l'Inter per 2-2 ma soprattutto la netta affermazione in casa contro la Roma per 3-0. Ciononostante la società bianconera non gli rinnova la fiducia, decidendo di affidarsi per la stagione successiva all'emergente Marco Giampaolo.[7]
Il 23 giugno 2008 diventa il nuovo allenatore del Lecce[8], neopromosso in Serie A, sostituendo Papadopulo e chiama ancora con sé il vice Carlo Garavaglia, il preparatore Paolo Lazzarin ed il collaboratore tecnico Max Canzi, tutti e tre con lui nel biennio trascorso a Siena[senza fonte]. L'esperienza pugliese per Beretta si conclude il 9 marzo, dopo 27 giornate e un pareggio a reti bianche contro la Reggina, quando viene esonerato dopo una pesante contestazione nei confronti della società da parte della tifoseria leccese con la squadra penultima in classifica con 23 punti frutto di 4 vittorie, 11 pareggi e 12 sconfitte.[9]
Torino
Il 29 novembre 2009 rileva Colantuono sulla panchina del Torino,[10]. La sua esperienza in granata, iniziata all'esordio con vittoria contro il Gallipoli, dura soltanto cinque giornate (e 4 punti): il 10 gennaio 2010, infatti, viene esonerato per lasciare il posto allo stesso Colantuono.[11]
Paok Salonicco
Il 14 giugno 2010 passa al campionato greco, diventando l'allenatore del PAOK[12]. Ma il 22 luglio 2010, un mese dopo l'ingaggio e senza nessun match ufficiale all'attivo, viene esonerato e il contratto viene consensualmente risolto.[13]
Ritorno in Italia
Il 6 dicembre 2010 sostituisce Beppe Iachini sulla panchina del Brescia[14], ma dopo sei punti in sette gare viene esonerato il 30 gennaio 2011 dopo la pesante sconfitta casalinga per 3-0 contro il Chievo: al suo posto torna Iachini[15].
Il 21 febbraio 2012 prende il posto di Daniele Arrigoni sulla panchina del Cesena dopo la sconfitta contro il Milan firmando un contratto fino al termine della stagione con opzione di rinnovo in caso riuscisse a salvare la squadra, in quel momento in lotta per la salvezza.[16]. Durante la sua esperienza al Cesena, Beretta raccoglie solamente 5 punti, frutto di altrettanti pareggi e 9 sconfitte. Beretta conclude il campionato con 22 punti, non riuscendo dunque a salvare la squadra che retrocede in Serie B. Viene sostituito il 25 maggio 2012 da Nicola Campedelli.
Il 16 luglio 2013 viene ufficializzato il suo ritorno al Siena, squadra appena retrocessa in Serie B.
Il 1º luglio 2014 diventa l'allenatore del Latina venendo esonerato il 5 ottobre dopo aver conseguito 7 punti in sette giornate.[17]
Dirigente sportivo
Il 26 maggio 2015 il Cagliari annuncia che Beretta sarà dal 1º luglio il nuovo Responsabile del Settore Giovanile.[18] Il 13 settembre 2016 partecipa al corso per l’abilitazione a direttore sportivo indetto dal settore tecnico F.I.G.C..[19] Si diploma il 28 novembre seguente.[20]
Il 9 febbraio 2018 viene annunciato dal Milan come nuovo coordinatore tecnico del settore giovanile rossonero[21] (incarico svolto fino a giugno 2019).[22] Ad ottobre diventa consigliere della FIGC, in quota AIAC, e dal 27 novembre è anche membro del comitato di presidenza [23] venendo confermato il 5 marzo 2021 sempre con Gabriele Gravina come Presidente.[24]