The idea that you try the header and one nonce and on that first try you get it is very unlikely. What's more likely is that you're going to be doing that hashing process hundreds, maybe thousands of times. And out of that million one nonce, one version of the nonce will actually result in what you're looking for - six zeros at the beginning. So it's definitely probabilistic game except that the difficulties adjusted such that on average you will always find the solution within the block time.
In this introductory episode, we discuss what makes up blocks and block headers. We also cover a bit about state vs history, what exactly makes up a transaction and do a quick intro to a Merkle Tree.
For more, please check out these resources: