As of September 8th 2010 a charge was introduced for all ESTA applications.
This charge is $14. The only official site for ESTA applications is as follows;
Any other sites will all cost you a lot more.
When applying you will need your passport and a credit card. The only cards accepted are, Mastercard, Visa, American Express and Discovery.
Your Esta will be valid for two years and does not need updating with flight or accommodation details. Applications should be made no later than 72 hours prior to you date of travel.