Smart Contracts, also intelligente Verträge, sind nichts anderes als Skripte, die in der Blockchain gespeichert werden. Da diese Skripte
eine eindeutige Adresse besitzen, können sie über eine Transaktion angesprochen werden, wodurch
der Vertrag ausgelöst wird.
Das ganze kannst du dir ähnlich einer if 
 then- Bedingung vorstellen und
macht halt den Einsatz überall dort attraktiv, wo Vertrauen erforderlich ist.
Auf der Ethereum Blockchain musst du dafür mit den Ethereum eigenen Sprachen Solidity oder
Serpent ein Programm schreiben, kompilieren und auf der EVM (Ethereum Virtual Machine) laufen lassen.
Beispiel:Bob setzt einen smart contract im Netzwerk ein, der folgende Funktionen definiert:
(a) Eine Einzahlung- Funktion, die es ihm erlaubt Einheiten von X in den Vertrag zu
hinterlegen
(b) Eine Handel- Funktion, die eine Einheit X zurücksendet, sobald sie fünf Einheiten Y
erhält
(c) Eine Abheben- Funktion, die es Bob ermöglicht alle Vermögenswerte abzuheben, die der
Vertrag beinhaltet.
Nun sendet Bob eine Transaktion an die Adresse des Smart Contracts, ruft die Einzahlung-
Funktion auf und deponiert 3 Einheiten von X.
Die Transaktion wird in der Blockchain aufgezeichnet.
Alice besitzt 12 Einheiten von Y, sendet 10 davon an die Handel- Funktion des Smart Contracts
und bekommt deshalb 2 Einheiten von X zurück.
Diese Transaktion wird ebenfalls in der Blockchain aufgezeichnet.
Anschließend sendet Bob eine signierte Transaktion an die Abheben- Funktion. Der Vertrag prüft
die Signatur, um sicherzustellen, dass diese Abhebung vom Vertragsinhaber eingeleitet wird und
überträgt alle Einzahlungen (1 Einheit X und 10 Einheiten Y) an Bob zurück.
Hoffe es ist halbwegs verständlich  

Anhand von dem Beispiel erklär ich es zumindest gern.