I've recently discovered that Bitcoin addresses come in two types:- compressed and uncompressed addresses.
There are more types than that. There are also P2SH, SegWit, and custom Txout-Scripts
But then how can we identify compressed and uncompressed addresses?
Just from the address itself? You can't. You'll need additional information, such as public key
Why do we have the two formats?
Uncompressed came first. Then software programmers realized they could use less bytes to make the transactions (and therefore pay less transaction fees) if they used compressed public keys.
Is there a possibility that there may be a new format in the future
Absolutely. There are already several more. I'm confident there will eventually be even more than we have now.
and is there an advantage to using one over the other?
Yes. Compressed public keys require less bytes in the transaction.
However, I've learned that although sending Bitcoin from a legacy address to a SegWit address isn't possible
This is not true. It as long as you can satisfy the requirements of the Txout-script (which generally means as long as your wallet software has the private kay and is designed to be able to generate the correct Txin-script and signature), you can spend the funds from any address type. There are no limitations on which scipts are used for the inputs or outputs of a transaction.
Well that's Strange, cos I know I tried it sending Bitcoin from a Legacy address to a SegWit address, and I'm pretty sure it didn't go through.
Perhaps you included insufficient transaction fee? Perhaps you were using old software that didn't know how to send to a SegWit address? Perhaps you typed the address in incorrectly? Perhaps you didn't have access to the private key for the "Legacy address"? There are MANy things that could have gone wrong. Without more details of exactly what happened, it's going to be difficult to say exactly why it happened.
By cheaper transactions do you mean on the blockchain network?
That's a strange way to phrase a question. I'm not sure what you're trying to ask, but in this discussion cheaper transactions means you don't have to pay as many bitcoins in transaction fees for your bitcoin transaction to be confirmed quickly. Confirmation time typically depends on the amount you pay PER BYTE, so if there are less bytes to pay for, then the total cost is reduced.
Therefore a legacy address is uncompressed and a SegWit address is compressed. Correct?
SegWit is a completely different type of address than people are typically talking about when they talk about "compressed addresses". SegWit has several benefits over the original transaction formats. One of those benefits results in reduce the cost of the transaction.