Flics à Toulon, Simon (Vincent Lindon) et Franck (Gilles Lellouche) fêtent la fin d'une mission. De retour vers chez eux, ils percutent une voiture. Bilan : deux victimes dont un enfant. Franck est indemne. Simon, qui était au volant et alcoolisé, sort grièvement blessé . Il va tout perdre. Sa vie de famille. Son job de flic. Six ans plus tard, divorcé de sa femme Alice (Nadine Labaki), Simon est devenu convoyeur de fonds et peine à tenir son rôle de père auprès de son fils Théo qui a désormais 9 ans. Franck, toujours flic, veille à distance sur lui. Lors d'une corrida, le petit Théo va être malgré lui le témoin d'un règlement de compte mafieux. Très vite, il fera l'objet de menaces. Simon va tout faire pour protéger son fils et retrouver ses poursuivants. Le duo avec Franck se recompose à cette occasion. Mais ce sera aussi pour eux l'occasion de revenir sur les zones d'ombre de leur passé commun...

Après Pour elle et À bout portant, Mea Culpa clôt une trilogie de polars dans laquelle Fred Cavayé met en scène un homme qui met tout en œuvre pour sauver sa famille. Thriller haletant d’une concision assez admirable (moins d’1h30), le film échappe au syndrome Taken, grâce à l’humanité que Lindon et Lellouche insufflent à leurs personnages.
Moins prenant que Pour Elle, mais plus intéressant qu’À bout portant, il mêle un peu les qualités des deux et finit d’imposer Fred Cavayé comme le maître du thriller à la française.