I work 90% in the municipal market, mostly wastewater. The most common "mistake" I see on designs from consulting firms is over specifying. There is no pat answer to your question - to me the essence of good engineering is to apply general principals to specific problems and come up with the best solution for the criteria and constraints of each design.
I'm not sure about water treatment plants, but I know wastewater treatment plants are notoriously prone to lightning and surges. They are also generally maintained by under-qualified or at least under motivated staff.
For example, I find fused terminal blocks for analog I/O are a pain in the rump - blown fuses maybe SHOULD be the first thing checked, but they aren't, and I'm not sure that the PLC doesn't protect the fuse by blowing first! If I have analog signals leaving the building, I use fused terminal blocks with MOVs and make sure they are grounded properly. If the I/O isn't leaving the building I use straight through terminal blocks that have a disconnect switch. That way I can check my loop current without any wiring or jumpers.
I also generally use 24 VDC interposing relays with relay outputs on the PLC, but not for every discrete output. If I'm only operating a pilot light or a starter or other device inside my panel, and the load current is much lower than the output rating, I skip the relay because it is just another potential failure.
I always include a surge suppressor/filter on the incoming 120 VAC power.
I could go on and on about some of the stupid things I've seen specified by consulting engineers spending other people's money, but the main point is: don't blindly follow a "standard". Think your way through every application. Include all components with a necessary function, but don't include any component just because it sounds like a good idea at first, or because "it couldn't hurt" or especially because "that's our standard".