From SP help:

"When to use the page-based browser-level functions:

When your Web pages contain dynamically embedded documents, for example, ad banner rotators.

When you do not want to care about session handling or when pages contain lots of session information that would require many WebParseResponseData function calls to maintain the session during replay.

When your server requires the “referrer” header to be set dynamically.

When your load balancer redirects the client to different servers dynamically.

When you want to use automatic verification for a page that checks whether the context between pages can be maintained.

For shorter, easy-to-read scripts.

When to use the browser-level functions instead:

When you need to generate the highest possible load on your server (number of virtual users, throughput)

When your Web pages use lots of client-side scripting, for example, JavaScript, VBScript, in order to download further documents or cause page transitions.

When your application is not Web-browser-based, for example, multimedia clients that use HTTP for communication but do not use HTML.

When maintaining context between pages is not relevant."

I'm interested in hearing from people who have used browser-based emulation on web sites with client-side scripting and what problems they've ran into or had to work around.

"When your load balancer redirects the client to different servers dynamically." - does this mean if one runs a script modeled with browser level calls that the load balancer will not dynamically redirect the hits to the different web servers?!?