I always describe F# as a cousin of OCaml because OCaml has many features that F# does not have and is never likely to get. F# is more closely related to the previous CAML language. In particular, F# has very limited support for abstraction and no support for structural typing (like OCaml's objects and polymorphic variants) at all.
Contrary to what some respondants have written, F# does have (limited) support for labeled ("named") and optional arguments.
However, these are all advanced features and you can certainly start getting to grips with the basic ideas behind small-scale OCaml-style functional programming using resources about OCaml. The first major difference you will discover is larger-scale problems like encapsulation and abstraction which are solved in completely different ways in OCaml and in F#. If you want to learn how to do that in F#, the only available literature is this article on purely functional data structures.
I have also discovered that OCaml's wonderful module system makes it easy to parameterize code over types (such as data structures) but the OOP alternatives are not only hideous but almost entirely unused on .NET. Moreover, when trying to write elegantly-parameterized data structures I hit dozens of bugs in the F# compiler because nobody has even attempted to do this before. The F# stdlib does contain some nice data structure implementations but virtually no reuse, i.e. it is a cut'n'paste job.