Azureus is the best client. Goto their site and onto their wiki, and there's a page about Good Settings. Do what it says for your connection speed, and then make sure it says "NAT ok" at the bottom, and the distributed database shows the number of people connected next to it.
Finally, the speed will depend on the quality of the torrent. A good torrent is one with lots of peers and lots of seeders. If you only have a few people downloading it, it may take ages if everyone has average connections.