La storia di Non odiare è ambientata in una città del nord-est, un non-luogo mitteleuropeo, contaminato e innervato da tante etnie, pulsioni, sedimentazioni e dalle profonde radici ebraiche. Qui, nel centro storico, vive Simone Segre (Alessandro Gassmann), un affermato chirurgo di origine ebraica: ha una vita tranquilla, regolare, senza scossoni, un appartamento elegante e più nessun legame con il passato. I duri contrasti con il padre, un reduce dei campi di concentramento morto da poco, lo hanno portato ad allontanarsi da lui ormai da anni. Tornando dall'allenamento settimanale di canottaggio, Simone si trova a soccorrere un uomo vittima di un pirata della strada. Ma quando scoprirà sul petto di questo un tatuaggio nazista, lo abbandonerà al suo destino. E quando arriveranno i soccorsi sarà ormai troppo tardi. Nei giorni seguenti, però, prevarrà il senso di colpa per la morte dell'uomo e Simone rintraccerà la famiglia del neonazista che vive in un complesso periferico popolare: Marica, la figlia maggiore (Sara Serraiocco); Marcello (Luka Zunic), al suo primo ruolo da co-protagonista, il figlio adolescente contagiato anche lui dal seme dell'odio razziale; il "piccolo" Paolo (Lorenzo Buonora). Verrà la notte in cui, Marica busserà alla porta di Simone, presentandogli inconsapevolmente il conto da pagare...