Update: Just released a small tweak to support the latest versions of WLM.
I've been using Yahoo! Music Unlimited for almost a year now. It's a great service. Cheap ($4.99/mo), fairly good selection, and 192kbs quality. The only problem is, it doesn't integrate with MSN Messenger/Windows Live Messenger's now playing display. There is a third-party plugin that sort of provides this functionality, but it's old, hasn't been updated, and doesn't work properly with the latest versions of WLM.
So I pulled together some information and code from a few different sources and whipped up my own plugin, using C# and VS 2005. It is extremly straightforward. Just import the interop libs, implement and interface, and register the assembly in the proper place.
The WLM now playing integration is fairly straightforward as well, if undocumented. It uses the WM_COPYDATA message to pass a specially formatted string to Messenger. I have factored the two segments seperately, so it should be easy to swap out the YME or WLM integration to support other music players or messaging services.
Feel free to use the component, or peek at the code, as long as you provide attribution back to me.
Requires .NET 2.0 Runtime. You can get it here, or as a standard windows update.