A lot of the answers provided so far seem to assume that you want a streaming solution where each person in the office can play their own individual playlists privately within the confines of their office/cube/pod/etc. If that's the case, feel free to ignore this answer.
However, it sounds to me like you want what is effectively an office Jukebox where there's only ever one song playing at a time and everyone in the general area hears the same thing. For a long time, my office mate and I had a setup for this type of situation using a combination of WinXP, Winamp, and a utility called WWWinamp. It looks like the WWWinamp project has been taken over and ported to .NET since we were using it. But basically, it provided a simple web interface to browse, search, and queue up music in Winamp on the "server" (the XP machine). The server played the music through directly connected speakers that we could both hear. We eventually added a simple Windows Media stream of the current audio output so that we could listen to "what was playing" remotely as well.
It was kind of kludgy, but it worked great at the time.