A typical CNN alternates convolutions (with ReLU) and downsampling. Downsampling shrinks the spatial size so later layers are cheaper, and it lets each later unit "see" a larger part of the image.
Pooling
Max pooling takes the maximum of each small window, usually 2×2 with stride 2, halving width and height. It keeps the strongest response ("there's an edge somewhere here") while discarding exactly where, which adds a little tolerance to small shifts. Average pooling takes the mean. Pooling has no parameters. Many modern networks downsample with strided convolutions instead.
At the end, global average pooling averages each feature map down to a single number, turning a stack of maps into a -vector for the final classifier, whatever the input size. It replaced the huge dense layers of early CNNs.
The receptive field
A unit's receptive field is the region of the input that can affect it. A 3×3 convolution sees 3×3 pixels. Stack two and each unit of the second layer sees 5×5; three give 7×7. Every downsampling step multiplies the growth. Deep in the network, units see most of the image.
This is also why stacks of small 3×3 kernels (the VGG design) beat single large ones: two 3×3 layers cover 5×5 with weights per channel pair instead of 25, and add an extra non-linearity in between.
A hierarchy of features
When researchers visualised what trained CNN units respond to (Zeiler & Fergus, 2013; Olah et al., 2017), a striking pattern appeared. First-layer kernels are oriented edges and colour blobs, much like the receptive fields neuroscientists Hubel and Wiesel found in cat visual cortex in 1959. Middle layers respond to textures and simple shapes, then parts like eyes, wheels or fur. The last layers respond to whole objects. Nobody programmed that hierarchy; it emerges from training on labelled images.
Pooling and strides shrink feature maps, so deeper units see more of the image. Trained CNNs build a hierarchy: edges, textures, parts, objects.