Windows replacement for HAProxy
Solution 1:
Maybe Perlbal? This is a Perl-based load balancing solution. I have not worked with it myself but I've seen it referenced often and, since it's written in Perl, there's some chance it will work. But...
...Google suggests that Windows server already has a built-in network load balancing service, as discussed here and here.
Solution 2:
Be careful, I've got very negative reports from people running Windows LB, which was the main reason why they switched to haproxy. If you're satisfied with haproxy, you can build it on windows using the cygwin suite. I have not tested it myself, but the user who performed the port did. He also told me that there was a limit to approximately 1600 concurrent connections per process under windows, which may or may not be enough for you.
From my understanding, the build should be as straightforward as on linux : "make". If you need more info from this user, I invite you to send a call on the haproxy mailing list. Alternatively, there are certainly people here on serverfault who can help with setting up a cygwin build environment. Please use version 1.3.22 (latest stable) for this.
Solution 3:
You can use NGINX as a reverse proxy. It supported on windows platform.
Go to NGINX home page for download and installation: NGINX home page
There is very nice tutorial how to configure it to serve load balancing: NGINX as load balancer
Solution 4:
I know it's been long time for question but if you want something for windows then solution is ARR -> NLB
IIS ARR will do Content Caching, Reverse Proxy, SSL Offloading. It does not do load balancing for that you need to use NLB on web servers. But combination is this two is very powerful.
Also if you end up being implementing some sort of solution mention in this thread so users who stumble upon here can gain from your experience.