GUI Automation : Selenium with Splinter or Test NG is a very quick start toolset. In line with Engineering practices.
Perofrmance Testing : HP LoadRunner, Always better to go for a loaded tool with all possible features for non-functional testing (primarily Load/Stress/compatibility)
Selenium and JMeter are the leading two tools for UI Automation and Performance testing
What language, platform, development stack are you asking about?
What kind of an application?
What does "best" mean for you-- that you can write tests in advance of development, that you can record/replay, that you can write tests without "sleep" command in them? That you have convenience of testing or fidelity to actual use?
What do you want from a testing app? There can be no best tool for every job.
A little more information makes this answerable.
For GUI testing, you can use Web Test by Appperfect. It is a fully automated GUI testing tool for web applications. Moreover, it is free.
For Performance testing, Load Test is a free tool from the same company. It is very easy to install and use.
AgileConnection is a TechWell community.
Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.