This This comes up so often that I have been updating a continuous "work in progress" document which lists all scenarios that are known to me for step by step debugging.
I've shared the latest version below.
The order of operations might not be 100% accurate, as this is impossible for me to check from the outside (and often doesn't really matter), but for a commercial sendout, here is pretty much what you can expect. For completeness - Transactional just handles "unsubscribed" like "active".
Some things are super common (list detective!!), some are absolute edge cases (like multiple email fields in the DE). But all have happened before!
updated 09-2021, initial version here: https://i.sstatic.net/JeLiP.png