I've been trying out
Rdio, and so far it's the best I have found for my needs on Windows Phone 8.
Rdio has a very broad and deep music library (they say 20 million songs). I really like the web service, and has good radio and related artists features.
For your requirements:
1.have a good Windows Phone app. - Rdio app on Windows Phone is a bit "wonky", and I would call it fair and not good. Syncing to mobile works OK for a playlist or album, but sometimes I find you need to close and reopen the app to have the synced items display. When playing an album, it often only displays the first song played even though it might be playing a subsequent song. There does not seem to be a way to add a song to a playlist from the mobile app. There also does not appear to be any "station" or radio features on the mobile app.
That said, the mobile Rdio app meets my needs for offline syncing and playback of albums and playlists.
2.can download music to listen offline - With a paid subscription, you can download as much music as want for offline listening. For now it only allows storing downloaded music to internal memory, and not to external SD cards. I'm hoping that WP 8.1 will allow it to store to external SD.
3.can create a playlists - Yes, but only from the web interface and not mobile. You can listen to playlists on mobile.
4.doesn't cost too much. - $9.99 a month for ad-free web and mobile
http://www.rdio.com/settings/subscription/
I tried Spotify on Windows Phone, and that app really is awful. I heard they plan to update their WP app in the spring.
I was a heavy Google Play Music All Access user, and really miss that on Windows Phone.
