Bin files, unlike other files such as .exe, .wpd, .doc, .xls etc don't have an actual program used to open them specifically. A .bin file is sort of a universal file for binary file. So it can be anything from a rom for an emulator, to image/sound data for a game.
There are a few widely used utilizations for .bin files. One of them is CD images. It is similar to an ISO image. Usually a .bin file will also require a .cue file that goes with it. Programs such as Alcohol 120%, ISO Buster, Nero (etc) can open these. The cue file is usually very simple and can be created by entering the following in a .cue file.
FILE "C:\locationoffile.bin" BINARY
TRACK 01 MODE1/2352
INDEX 01 00:00:00
Then you would simply open Nero or other burning program that supports .bin images and burn from there. Also, with daemon-tools it's possible to mount it as a virtual CD ROM without even burning it, this is useful for testing to ensure an image actually works, before burning it and realize you just made a coaster.
But like mentioned, .bin files are not for a single purpose. CD images is one of them, but so is other things such as game roms and such. Mame is a good example of an emulator that uses .bin files.
.bin files have too many uses to list them all but CD images and ROMs seem to be the two biggest users. AVG (and possibly other Avs) use them, windows uses them (ex: mib.bin which appears to be for SNMP (Simple Network Management Protocol). I even found a bin file in my printer's driver directory. So they're used pretty much everywhere and can be looked at in the same way as a file with no extension, which has multiple purposes. The main reason each program won't just come up with their own is probably to avoid using extensions that are used by other programs. So "less important" binary files are usually just named .bin to avoid hassle.
There's not much more to say about these files unless I start covering every single use, so I will end the article here. I hope it cleared things up on what .bin files do.