> This is why we want large key spaces
Yes, but large key spaces are really easy to have. The size of the key space doesn't cost you anything when you're encrypting or decrypting, but it costs the earth if you're trying to guess the key.
> and why algorithms needing offline brute force protection like password hashing algorithms artificially increase execution time and resource requirements
Ehhhh... this is more of a function of the fact that the password space is much smaller than it looks. Password cracking attempts generally aren't trying to exhaust the space. Instead, they're trying to guess the password based on the known properties of passwords. You start with common passwords and work your way down to iffy ones. You don't bother guessing rare passwords; there are too many of them.
Rainbow tables exist, but they have sharp length limits, precisely because of the explosion-of-the-key-space phenomenon.