LoadRunner is an application load testing tool for layers session through application (4-7 of the OSI model). If you need a tool that is going to test layers below the session layer, then you need to look at a network load testing tool.
LoadRunner is not a GUI/functional testing tool. If you need to functionally check an application, then WinRunner (in the Mercury family) is the way to go.
I've only ever used Loadrunner, so I can't compare it to other solutions.
However, the only limitation I've run into with LR so far is that it's extremely expensive, and every add-on costs more money. There are a lot of things I'd like to do with Loadrunner that I'm quite sure not only possible, but fairly easy to do. However, in the tight economic times we're in, there just isnt' another $50,000 available to add different VUsers or extra monitor types.
After budget, I'd agree with imagination, education, creativity and programming skills as the limiting factors.
Rational Robo by IBM is also one of the tool that we can used for Load Testing.
Only thing is, we need to decide at very start of the project that we are going to use the Rational Robo for the Load testing unless we cannot use the functionality of Rational at its maximum.