A smart contract is a program stored on a blockchain that runs exactly as written whenever it's triggered — no server to take down, no company that can unilaterally change what it does once it's deployed.
Ethereum popularized general-purpose smart contracts, letting developers write arbitrary logic — token issuance, decentralized exchanges, lending markets, voting systems — that executes deterministically across every node in the network, with the result recorded on-chain for anyone to verify.
Because a deployed smart contract is (in most designs) immutable, bugs discovered after launch can't simply be patched the way a traditional application's bug is fixed with a server-side update. Some of the largest losses in crypto history have come from exploited smart contract vulnerabilities, not stolen private keys.
This is why serious projects invest heavily in third-party audits, formal verification, and bug bounty programs before and after deployment — and why upgradeable contract patterns (using proxy contracts that can point to new logic) have become common, despite the tradeoff of reintroducing a degree of centralized control.
Smart contracts are a powerful tool for removing intermediaries from an agreement, but "the code is the contract" cuts both ways: a flaw in that code is enforced with the same certainty as its intended behavior.