1.)
Web 1.0 was not dynamic or programmable.
Just text, images, links
First java script made web 2.0 possible
2.)
Smart contracts are small pices of code, which run on the ETH blockcahin. (written in Solidity)
A smart contract can own money and decide to send it, if a certain requirement is met.
3.)
-All transactions can be viewed openly.
-Everyone can openly view and verify the code of a smart contract.
-Smart contracts cannot be changed afterwards.