A child theme is a theme that inherits the functionality and styling of another theme, called the parent theme. Child themes are the recommended way of modifying an existing theme.
Imagine you have a painting on your wall. And, on top of it, you put a transparent foil for your kids to draw with pencils all over the place. They can make a house blue instead of the white one your painting has. They can add some trees and a flying dragon which were absent in your piece of art hanging on the wall. In short, they can modify how the original painting looks based on their latest tastes.
Your kids - or anyone you want - can keep drawing and modifying the painting without ruining it because all occurs on the transparent foil, which is something you can always remove
and revert back to your original (probably less appealing) painting.
A child theme works exactly like this. As WordPress developer and Codeable expert Daniel Klose explains:
A child theme is basically a layer on top of your existing WordPress theme that you can make modifications to. You can change part of its functionality, you can change its style, how it looks, all being sure you're not ruining your parent theme.