I regularly perform 100% water changes and don't loose fish. Old water only brings death, new water brings life.
The reason for the issues is people do not take proper precautions. In order for deaths to result from large water changes there has to be a significant water chemistry or temperature difference between the new water and old water. The most common causes of water chemistry differences are actually caused by us. Either we refill without proper dechlorination, we have substrate in the tank (such as crushed coral or argonite) or limestone rocks (such as Texas Holey Rock) that leaches calcium and magnesium into the water, increasing hardness and TDS values. When we then perform a water change the TDS values of the replacement water are much lower than the tank water and this causes osmotic shock and subsequent death in the fish.
Another cause is Old Tank Syndrome (OTS). OTS occurs when we are not diligent enough in our water changes. Bacterial processes in our tank (the nitrogen cycle) release acids that erode away the carbonate buffer (KH). Once eroded, the pH crashes and with a pH crash nitrifying bacteria (the bacteria that removes ammonia and nitrite) go dormant and ammonia starts building up in the aquarium. But with a low pH the ammonia is in a non-toxic form (ammonium) so it does not affect the fish. Then we come along, unknowingly, and perform a water change. The new water is of a much higher pH and with the subsequent pH increase in the tank the ammonium is converted back to ammonia and the fish die.
These are some of the most common reasons, all easily avoided provided you know how to prevent them.
A couple of articles related to this subject can be found here:
http://www.oscarfish.com/article-home/water/73-myths-of-ph-shock.html
http://www.oscarfish.com/article-home/water/74-realities-of-ph-shock.html