<p>Functional languages are good because they avoid bugs by eliminating state, but also because they can be easily parallelized automatically for you, without you having to worry about the thread count. </p>

<p>As a Win32 developer though, can I use Haskell for some dlls of my application? And if I do, is there a real advantage that would be taken automatically for me?  If so what gives me this advantage, the compiler? </p>

<p>Does F# parallelize functions you write across multiple cores and cpu's automatically for you?  Would you ever see the thread count in task manager increase?</p>

<p>Basically my question is, how can I start using Haskell in a practical way, and will I really see some benefits if I do?</p>

I'm currently learning Haskell myself, when you start out learning it, it doesn't seem very intriguing because the learning experience is NOTHING like learning a language like C#, it's a whole new world, but I noticed I could write very very complex expressions in just a few lines of code, when I looked back at the code it was much more concise, it was small and tight. I'm absolutely loving it! You can indeed write real-world programs that will be smaller, easier to maintain, and much more complex then most other languages allow, I vote for you to learn it!!
Good luck.