Ethereum is a decentralised platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third-party interference.
These apps (also known as Dapps) run on a custom-built blockchain - an enormously powerful globally shared infrastructure that can move value around and represent the ownership of property. This enables developers to create markets, store registries of debts or promises, move funds in accordance with instructions given long in the past (e.g. a will or a futures contract) and many other things that have not been invented yet, all without a middleman or any counter-party risk.
Smart contracts are self-executing contracts, where the terms of an agreement are written directly into code. This code (i.e. the terms of the agreement) now exists across a globally shared, distributed and transparent blockchain network, visible for all to see and verify. These contracts allow for agreements to take place between anonymous, disparate and otherwise trustless parties, without the need for a middleman (e.g. central authority, legal system).
Ether (ETH) is a necessary element for using & running distributed applications on Ethereum. It is a form of payment, made by the users of a application platform, to the machines executing the requested operations.
To quote the Ethereum Foundation: "ether is the incentive ensuring that developers write quality applications (wasteful code costs more) and that the network remains healthy (people are compensated for their contributed resources)."
Developers who intend to build apps on the Ethereum blockchain, as well as users who want to access/interact with smart contracts on the Ethereum blockchain need Ether to do so.