I have some experience with load balanced solutions, however it really depends how your network and software are designed as to which is the best solution for you to go for.
In terms of solutions I've encountered:
Built in load balancing in windows works well for most cases, although you need to ensure your applications can handle sessions correctly if they're not sticky. etc.
I've used F5 products, mainly as a caching solution, however they were overly complex for us.
We are currently moving off them, as developers were not using them correctly as they were too complex. (Please note these were quite old F5 products.)
We're currently trialing hardware load balancers from Foundry, and we'll probably go with them as they will fit in well with our network architecture. (Which is quite complex.).
So I'd say, if you want a simple solution use load balancing in windows (If your applications will work correctly.).
If not use something more complex.
Regardless of which load balancer you go with, you're making your architecture more complex. So plan and test it carefully.