My cycling is mostly commuting, mostly road and some gravel.
I ride in the shoulder of a long bridge, which ends up with a lot of debris, so I've gotten punctures resulting in flats twice going over that stretch.
I have cheap tires, though (Evo Outcross), so I just fill the tubes with Slime and call it good.