I've tried most approaches, even the fancy device from bassmute.com. In the end, it depends on exactly what kind of muting action you really want, and whether you want it all of the time or only on some songs. Using your hands is great if you just want to stop the string *now*, but persuading the string to decay more rapidly is hard to do in any very consistent way by hand, especially if you have other notes to get played in the meantime.
I wanted to be able to have a rapid decay to mimic an upright for just a couple of songs, but have the ease of changing back to the normal sustain otherwise. The need to change quickly made the inexpensive route of using foam impractical, so I sprung for the gizmo from bassmute.com. I can say that it does it's job pretty darn well, and allows you to adjust the muting action you prefer.
Engaging that gizmo, or putting foam under the strings by the bridge, is going to have an effect on the tuning/intonation of your bass, though. Having to retune upon engaging the widget takes away from the 'quick change' aspect of the thing. In the end I decided to just use a different bass with the foam and tuned appropriately if I really want optimize that aspect. If I don't feel like carrying the extra bass to a particular gig, or if the set list / seque design doesn't allow the time to change instruments I just mute the best I can with my hands and get on with it.