Officially, Rhythmbox isn’t a part of the GNOME desktop proper. It is, however, about as close to the official media player as one can get (Totem, I think is the default for all MIME types handled by gstreamer). Rhythmbox, like every other jukebox besides Amarok, uses an SQLite database, but what separates Rhythmbox from its competition is that fact that Rhythmbox is written, I believe, in native C, meaning that it has a performance advantage over the rest. It, too, uses gstreamer for its audio playback.
Rhythmbox is a bit of a paradox: many of the whizbang features that we’ve come to expect from modern players, like album art or lyrics, were only included as recently as two point releases (version X.Y.Z, where Z is the increment) ago. Support for Audioscrobbler was only added this past version (0.9.6). These are all selectable in the plugins dialog. Yet Rhythmox, due to its close association with GNOME, has been better integrated into other services, like SoundJuicer, Nautilus, Gajim/Gaim, etc.
Rhythmbox allows for some basic control over things like column setup, but in most instances it has the same design æsthetic as other GNOME programs: few options, fewer buttons, and generally middle-of-the-road functionality. It’s certainly a usable program, and its integration with the GNOME desktop not only in appearance but in function, as well, is a definite plus. If the paned design for the player window doesn’t bother you, and if you don’t require significantly fine-grained control over the functions of your player, Rhythmbox is a great option. The mere fact that it’s the only program here not written in an interpreted language is one of its major selling points—it has a speed to it that isn’t likely to be found in any of the others, even if it lacks some of their gloss.
There’s no perfect solution in the GNOME desktop. The fact is, there’s a wide variety of different programs which are largely variations on the same theme: a (usually) Python or C#-based player with a gstreamer engine and an SQLite library, all of which have some trouble scaling up for large libraries. All of them are excellent efforts, but none of them break new ground.
In the end, it comes down to which features are most important to the user. For me, speed is a factor, which is one of the reason I still use Amarok, even in the GNOME environment: the native code and the fast database are enough to sustain my loyalty.