Almost every treatment train is a combination of a few basic mechanisms, arranged so each one protects the next.

Sand or multi-media beds catch suspended solids by physical capture. Cheap, robust and easy to maintain; useless against anything dissolved. Its real job in most plants is protecting whatever comes next from fouling.
Carbon adsorbs organic compounds, chlorine and much of what causes taste and odour. It works well and then stops working, and the transition is not visible from outside the vessel — which is why carbon is replaced on a schedule rather than on appearance.
Resins swap unwanted ions for harmless ones: the standard answer to hardness, and to specific contaminants when the resin is selected for them. The constraint is regeneration — the problem has not disappeared, it has moved into a waste stream that has to go somewhere.
Pressure pushes water through a barrier that holds back everything above a certain size. The most capable method and the most demanding one: it needs clean feed water, steady pressure and attention, or it fouls.
The same four stages in a different sequence can halve or double the running cost. Coarse removal belongs ahead of anything expensive, because every gram caught cheaply upstream is a gram that does not foul a membrane downstream. Trains that look over-engineered on a diagram are often just protecting the one component that is costly to replace.