Usually in electronic projects people choose to use low quality sounds like ISD chips with 8 kHz sampling rate, direct PWM, or end up with MP3 decoders. Las option is to play uncompressed audio files from SD/MMC card via DAC. Such solution can give good sampling rate and good quality especially when sound is filtered and amplified with op-amp.
This project is set up around Arduino board. It takes wave files from CD/MMC card and plays them asynchronously as an interrupt. So there are resources left for additional tasks between them. It can play 22 kHz, 16 bit mono wave files of any size. Files are stored in FAT18 formatted media card – so it is easy to upload new files via standard card reader. All files and libraries are downloadable or as usually you can order a kit to enjoy the music. Over all project is well described – I recommend to read even if you aren’t going to build one. There are some good materials about audio sampling and interfacing SD/MMC cards with arduino.