I am a big fan of Love and Logic. I had a moment today, where i said "this is my last warning" and then I realized and had been giving warnings and not consequences. Consequences work better than talking, rationalizing, explaining or warnings
It takes practice, but I think it works really well. The middle school I used to work at did trainings in it, and I use it with the little ones now.