Per forza non funziona, non stai usando max... Quando finisce una serie consecutiva della stessa lettera, prima di azzerare con e aggiornare let devi confrontare il numero di occorrenze contate con max, e se è superiore al valore attuale, sostituire max con con:
codice:
     char l=0, let=0, maxLet;
...
            else
            {
                if(con>=max)
                {
                    max=con;
                    maxLet=let;
                }
                let=l; //La lettera di paragone diventa la nuova lettera
                con=0;
            }
        }             
    }
    printf("\n\n");
    printf("La lettera che si ripete piu' volte e' la %c e si ripete %d volte", maxLet,max);
    printf("\n\n");
Tra l'altro, perché scrivi direttamente i numeri dei caratteri? Usa più semplicemente i char literal:
codice:
        if((l>='A' && l<='Z') || (l>='a' && l<='z') && (l!=' '))