i wrote a small library in the Scala language to search and download from freesound : http://github.com/Sciss/ScalaFreesound . the approach is that of Batuhan Bozkurt's supercollider class ( http://www.freesound.org/forum/viewtopic.php?t=4535&highlight= ), i.e. it uses curl to do the queries and download (thus it assumes a Un*x system). there is little documentation but the readme shows how to do a query and download.
there is a little GUI front-end in Swing as well: http://github.com/Sciss/ScalaFreesoundSwing . this is currently not very customizable, but it is probably a good starting point for other clients. it has a login window, a query dialog (currently no widgets for advanced query...), and a JTable based view for results.
upload functionality is currently missing, obviously something that would be nice to have in a future version.