What Ethereum added
Bitcoin is a ledger that moves one asset. Ethereum is a computer everybody runs, that also happens to move assets. That difference generated an entire industry.
Bitcoin's scripting is deliberately restricted: enough to express conditions on spending, not enough to run arbitrary programs. Ethereum, proposed by Vitalik Buterin in 2013 and launched in July 2015, removed that restriction on purpose.
The core idea
Ethereum defines a virtual machine — the EVM — whose instructions are executed identically by every participant. Submitting a transaction can therefore mean running code, not merely transferring value, and the outcome is agreed by the same consensus process that agrees on payments. A program deployed this way runs exactly as written, with no operator able to stop it.
The differences from Bitcoin
- Accounts, not outputs. Ethereum keeps explicit account balances rather than Bitcoin's unspent outputs. Simpler to reason about for programs, and slightly worse for privacy.
- Turing-complete execution. Programs can loop and branch arbitrarily, which is why execution must be metered. See gas and fees.
- Faster blocks. Roughly twelve seconds, against Bitcoin's ten minutes.
- No fixed supply cap. Issuance is set by protocol rules that have changed several times, and a portion of fees is destroyed, so net supply can rise or fall depending on usage.
- Proof of stake since September 2022, where Bitcoin remains proof of work.
The halting problem, and the fee answer
If programs can loop forever, a malicious transaction could hang every node on the network. Ethereum's solution is to charge for each operation executed: the sender specifies a limit, execution stops when it is exhausted, and the fee is paid regardless of whether the program finished.
This is elegant. It also means running out of gas consumes your fee and reverts your transaction, which is a failure mode with no equivalent in ordinary payments.
What it made possible
- Tokens as a standard. Issuing an asset became a matter of deploying a contract that follows an agreed interface. Most assets you see are tokens on a platform like this, not separate chains.
- Decentralised finance. Exchanges, lending and derivatives implemented as programs rather than as companies.
- Stablecoins at scale. The largest practical application of the whole field runs mostly as contracts on platforms of this kind.
- Ownership records for anything. Including, for a period, a great deal of speculative nonsense.
Bitcoin's restricted scripting is a smaller attack surface by design: there is less that a contract can do, and therefore less that can go wrong. Ethereum bought expressiveness and inherited every class of software bug along with it. Essentially all of the large protocol-level thefts in this field have happened on programmable platforms, because that is where there is something to exploit. This is a trade, and both projects made it deliberately and differently.
The rest of the field
Many later platforms are variations: faster, cheaper, differently governed, sometimes compatible with the same EVM instruction set so existing contracts can be redeployed. The architectural argument is largely settled — general-purpose execution won as a design — and the competition is now about throughput, cost and decentralisation trade-offs. See the trilemma.