Functional programing is different. I don't think it's hard but it's not what most developers have spent years practicing. So there is a learning curve to get over.
Critical mass is a problem for all new languages and often it's not the best language that will win critical mass. It's the one that gets adopted for reasons that aren't always merit (see javascript).
I pick F# because it's easier for me to avoid silly mistakes. I find my code is easier to change and it's harder to write some classes of bugs. It's also very pleasant to use.
But C# is pretty good at all of these things, F# is just a little bit nicer. But that little bit comes at a big cost of being very different.