Last updated: March 2023 / 779000 o'block
Every ten minutes or so, all transactions that are relayed to the Bitcoin network are collected in the mempool(memory pool). Miners collect transactions from the mempool and put them into a block that they then try to add to the Bitcoin blockchain. All mined blocks, from the first ever block(the Genesis block) to the current one, are linked together in chronological order and numbered. This number - really the number of blocks that came before it in the blockchain- is called a block's height.
A few interesting things about block height:
The order of blocks is immutable and two blocks can not have the same block height - if they do, that's a fork in the chain.
Bitcoin halvings occur every 210,000 blocks. This is roughly once every four years.
Because a block is mined approximately once every ten minutes, the block height can be used as a rough reference to a point in time: date of Genesis block + block height * 10 minutes = date and time when the block was mined.
(If you've ever wondered what those mysterious digits on block clocks or apps are, that's what that's about. They show block height of the current Bitcoin block. And yes, it's just for fun really.)
Graphical abstract: for when you just need a quick overview or reminder - same stuff as above, just all in one image.