If not, then why aren't all the pages loaded into the TLB so that TLB misses never happen.
The number of entries in the TLB is limited and keep in mind that there are multiple levels of TLBs. So the higher the level, the more entries they typically have. For more detailed information have a look at the following page for Skylake.
Wat you are referring to is a minor page fault; so there is no matching entry for a page in the TLB, but the page is in memory.
You can also have a major page fault, the entry isn't in the TLB + isn't in memory. It needs to be loaded from disk into memory first before and entry can be placed in the TLB.
So even if your TLB would be infinitely large, you still need TLB misses to deal with major page faults.