This is my personal favorite:
The first rule only accepts a limited number of pings (1 per minute, with a burst of about 10 I believe (default)), the second rule drops all pings that exceed this, and then I accept all other types of ICMP traffic (which is important to have).
iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 1/m -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -j DROP
iptables -A INPUT -p icmp -j ACCEPT
This is good because it allows you to ping your own box remotely for diagnostic reasons, but prevents people from pingbombing you