It has value because:
- Just like FIAT, we believe it has a certain value
- Because you can sell it at any time for that value
- Because it takes X amount of dollars worth of energy to produce a single Bitcoin (this is often overlooked - it established base cost)
- There is a limited amount of Bitcoin (whereas more new dollars get printed every day = inflation)
- It's better than old money, because you can send/receive it anytime anywhere and don't even need to be there physically
- By cutting out the middlemen (banks) you gain: Freedom of spending, private access to your funds (even police can't touch it without your passphrase), lower costs, faster speeds, a certain degree of anonymity/pseudonymity
And that's just at the current stage. There are many improvements and different implementations being built.
People ask me: "What real world value does a Bitcoin have?"
I ask them: "What digital value does gold have?"
You can't buy anything on the internet with gold. But you can with cryptocurrency. In fact, I am pretty sure soon gold will be tokenized into a cryptocurrency too. The true value of Bitcoin is that it can be used to buy digital things: parts of an infrastructure or digital fuel (Ethereum), or part of an online business (OmiseGo) or part of a new generation Facebook (Steem/it), and reap the rewards from that. Anybody who wants a piece, will need to have cryptocurrency (aka Bitcoin) to purchase them.
Gold isn't better because it's physical. In this new world it's worse because it's not digital.
RE: What Gives Bitcoin its Value?