A situation where a debugger helped you understand a great deal has to be a situation where you don't understand what's going on.
I agree a debugger can help you figure out mysteries. But when I find myself using one, I try to ask: how could I have avoided having a mystery in the first place. Common answers: better tests, cleaner code, better design.