It Depends....
If you're doing machine control, then off line changes are usually easy to implement. But....if you're doing process control, it may take hours or even days to shut down the process. If you only have to make a minor change, then the down time cost far out weighs the "risk" of doing online modifications.
Since I work in the process industry, most of my changes are made while the process is running. I have a co-worker review the intended logic change, and then implement the new logic in parallel with the old logic, and have the new logic only fire a "dummy" bit. I then observe the process and my "new" logic to ensure it is functioning as expected, making any required modifications. Once every thing is working as needed, I then remove the dummy bits and move control to the new logic, and disable the old logic. I then wait a day or so, and if everything is still operating as expected, I then remove the old logic.