In the last period, many times I was involved in discussions with customers regarding the adoption of the out-of-the-box Windows Server NLB (Network Load Balancer) or dedicated hardware solution (Cisco, F5, Coyote, etc.)
  I’ve tried to summarize my mental pattern about this argument, in the table below (…well, I censored Duff & Donuts from my thoughts):
              |  | PROS | CONS | 
             | NLB |            It’s cheaper (already available as part of Windows Server stack).Rapid deployment and adoption:             SharePoint team doesn’t need to rely on the infrastructure team for the configuration;No real technical expertise needed; |            NLB works at socket level (TCP/UDP) and doesn’t provide any specific feature or optimization for http/https.A dedicated NIC (network card) is strongly recommended.Governance and Operations of NLB cluster could be tricky:             more people must be made aware of NLB configurations Configuration could be tricky in presence of multicast traffic.No caching capability is provided:             for http/https is expected to rely on Microsoft ISA or IAG; No certificate management:             Certificate must be individually managed in IIS;Some Governance is needed; No compression capability:             for http/https is expected to rely on IIS 7.x Technology is …antique, well not really an issue but NLB was created to balance COM+ application with NT4/OptionPack  | 
             | Hardware Load Balancer |            Improved Performance, https traffic is managed at hardware level;Low latency during the switching in case of High-Availability configuration.SSL and HTTPS configuration is managed internally, making it transparent to IIS/SharePoint configuration.Caching capabilities if needed (don’t abuse of this).High-Availability generally supports dependency rules on how to route packets in case of unavailability of specific servers/application tiers.Support of protocol specific rules (http, https, etc.)Support of Security Rules;Technical Agnosticism, the tools can be used to balance Windows, Linux, Web Server, sockets, email servers.Governance in the sense that there is a centralized point of management for all the needs regarding balancing, high-availability, security etc.  |            Expensive, for sure it something to be acquired and identifying the best solution won’t be easy ‘cause the huge amount of options in the market. Learning Curve  | 
   
  Rules of Thumb
     - Use NLB if hardware load balancer is not available  and there are no plans on that (polite way to say no budget); 
- In the Intranet, if reverse proxy isn’t available (sometimes the hardware load balancer is available only for Internet traffic); 
- As Tactical Solution (as example for running stress test on your new project in a stage environment if the hardware solution is not available or cannot be used); 
- We can definitely state that a strategic solution must rely on hardware load balancer, a tactical solution could rely on a software NLB.