PNGs are supposed to be used for images with few colors or if transparency is needed. compare a PNG and a GIF of the same image and the PNG will usually be smaller. also, PNG was designed for the web specifically, mainly to replace GIF.
GIF can't handle partial transparency. a pixel is either fully transparent or fully opaque. GIFs are limited to 256 colors whereas PNG is capable of 16.7 million. unless you're making an animated image, there really is no reason to use GIF.
if you're saving a photograph or something with complex colors, it's best to stick to a format like JPG. a PNG will have better quality but will also be significantly larger.
TIFF really should not be used for the web since it doesn't use any compression and is really more for high resolution images that are going to be edited.
I can't say anything about BMP since I honestly can't remember the last time I saw anyone use that outside of kids playing with MS Paint. I'm fairly certain that it's not a compressed format, either.