I use OCaml, occasionally, especially for data/transpiler work. I've always wanted to try F#, but it being .NET sort of scares me away. I've always sort of admired the pragmatic beauty of the OCaml ecosystem--at least as much as one can call an ML-derivative 'pragmatic'--though I don't get that same feeling from F#.
Task expressions look neat though, and might give me a reason to try.
It's a very practical ML-family language. It runs on Mac, Windows, and Linux. It doesn't really sacrifice anything, either. The last thing I delivered with it was a network health utility, which did UDP and TCP sockets and platform API calls very cleanly. It's really not a toy language. Distribution is cool too, because you can build for a system with the runtime installed or build a single-file executable. My suggestion: build a utility program with it for your own purposes and if you're productive with it.
.NET is really good nowadays & does well cross platform, absolutely worth trying.