My 2 cents is to use whatever is best on a per-instance-basis.
If you have a photograph, usually JPG's the way to go. If you need smooth transparencies on a complex background or a background that's going to be changing, PNG(24). For buttons, other small images that look good with 256 colors, use PNG-8, GIF.
If it's a choice between PNG-8 and GIF, the PNG-8 usually is going to give you a slightly smaller filesize.
PNG-24 has the best quality if you're needing a nice alpha transparency, but the filesize is an issue if you're dealing with a large image/photo.
To help IE6 (IE 7/8 support transparent PNG-24's fine), Google 'Unit PNG Fix' and also 'png fix fireworks' for smooth transparency fixes.