Talking about the two address (or public keys) do you mean "Bitcoin address" and "Bitcoin Adress compressed". Because this is the same thing (same address). Just one is compressed?
Compressed does not mean that the address is compressed. The address is generally the same size in either.
The full name would be "compressed key address". In other words, the key is compressed (the public key), not the address.
Addresses don't actually exist at the transaction or blockchain level. Addresses are just an abstraction wallets use to make it easier for us humans to talk about transferring control over value. Those addresses get translated into scripts when the wallet builds the transaction.
There are several different types of scripts, and as such a single private key can result in MANY different scripts. Many of them would have a unique address associated, some wouldn't have any address at all, but would still be valid transactions with spendable outputs.
Pay-to-PubKeyHash (P2PKH) scripts are represented with the type of address that starts with a "1". In that case, you must supply the public key when you spend it. Using a compressed key address means that when you spend that output you'll only need to supply half of the public key (32 bytes). The other half can be computed from that, which saves you 32 bytes when you spend it and results in a cheaper transaction fee.
So there are exactly two public address derived from a private key. No more no less... right?
- There is exactly 1 uncompressed key P2PKH address
- There is exactly 1 compressed key P2PKH address
- There are ~2160 P2SH addresses (Addresses that start with a "3")
- Segwit will eventually introduce 1 or more additional address types
- There are many spendable output scripts that don't translate to an address