Recommended, especially if you think Apple is just as evil as Microsoft.

Songbird

I'm using version 0.2 Developer Preview regularly, and am happy with it. Reasonably stable. I don't need much, just an MP3 player, but I like the iTunes interface. With Songbird, I get the same interface, and other features if I want them. The mini-player is better than iTunes.

If you try it, you'll notice it doesn't have the Genres panel. I filter by genre quite a bit, and found this can be added very simply by editing a particular file. Here are my notes:

Add "genre" to the array in the following function, as shown.
The function is in 
Program Files/Songbird/chrome/songbird.jar (open using Winzip)
content/songird/xul/playlist_test.xul


  function LocalLoad()
  {
    try
    { 
      // Default values, in case we get confused
      var table = "library";
      var guid = "songbird";
      var data = SBDataGetStringValue( "browser.uri" );

      // Cook the table from the magic browser uri?
      var qm = data.lastIndexOf( '?' );
      if ( qm > -1 )
      {
        var str = data.substr( qm + 1, data.length );
        var divider = str.lastIndexOf( ',' );
        if ( divider > -1 )
        {
          table = str.substr( 0, divider );
          guid = str.substr( divider + 1, str.length );
        }
        else
        {
          table = str;
        }
      }
      
      if ( ( table.length > 0 ) && ( guid.length > 0 ) )
      {
        // If we're a library, we want metadata filters
        var filters = null;
        if ( table == "library" )
        {
          filters = new Array(
                                "genre",
                                "artist",
                                "album" 
                             );
        }