A bump map is the simpler ancestor of the normal map — it computes a tilt on the fly from a grayscale height texture’s brightness changes and feeds only that into shading. Not a single vertex moves, so the object’s silhouette stays perfectly smooth from the side no matter how bumpy it looks head-on.
A displacement map reads the same grayscale texture, but adds its value to the vertex positions themselves instead of the shading. That needs enough vertices to actually move — a densely segmented mesh — so it costs far more than bump mapping. In exchange, the silhouette genuinely gets bumpy, and shadows fall the way real geometry would.
Blender and C4D expose these as separate “Bump” and “Displace” inputs on a material node, and real-time renderers handle displacement with GPU tessellation or a vertex shader. When there’s no close-up and performance matters, bump is enough; once the camera gets close to the surface or the silhouette matters, displacement is what you need.
When to use
Pick displacement when a close-up shot or the silhouette matters; pick bump when the surface sits in the background and performance comes first.