Lucas' CacheM3U Perl script (a fork of LeechM3U, but which doesn't redownload the tracks if you already have them) is very cool. I'm using it with On My Command, which uses selected text (ie the URL of a playlist, normally in Safari's address bar) as the input to a script run in Terminal:
GET '__OBJ_TEXT__' | \
cachem3u - | \
mpg123 -vy -