Ceramic: the sensible default
Ceramic is softer, lighter and easier to cut, which keeps labour down. It is perfectly suited to walls in any bathroom, and to floors in bathrooms with normal domestic traffic. Typical supply cost runs from around £18-£35 per square metre.
The trade-off is water absorption. Ceramic bodies absorb more moisture than porcelain, so we would not specify budget ceramic for a wet-room floor or a shower tray surround that stays wet for hours.
Porcelain: harder, heavier, slower to fit
Porcelain is fired hotter and denser, giving very low water absorption and far better resistance to chipping. It is the right call for wet-room floors, family bathroom floors and anywhere you want a large-format look.
It cuts slower, needs a decent wet-saw and, in large formats, two fitters to place sheets safely. Expect the labour line on your quote to rise even when the tile price is similar to ceramic.
Natural stone: beautiful and demanding
Marble, limestone and slate all look superb and all need sealing before grouting and periodically afterwards. Stone is porous, reacts to acidic cleaners, and varies tile to tile, so it needs dry-laying and sorting before it goes on the wall.
If nobody in the house will re-seal a floor every year or two, stone-effect porcelain gives you the look without the maintenance.
Slip resistance and where it matters
Floor tiles carry an R rating for slip resistance. R10 is a sensible minimum for a bathroom floor and R11 is worth specifying for a wet-room where water sits on the surface. Small-format floor tiles also help, because the extra grout lines add grip.
Wall tiles have no meaningful slip requirement, which is why polished finishes are safe there and risky underfoot.