I believe transactions are quite optional though? A miner could choose to mine empty blocks if they truly wanted, which transactions to include if any is up to them.

Correct, one can mine empty blocks, but in practice, dumb idea. Most people mine with a pool. The pool decides what goes into a block. Even at scale. The point is that it smoothes out the reward cycle. For ETH, we mined with a pool that dual mined ETH+ZIL, which increased our overall rewards.