<p>In my second year of University we were "taught" Haskell, I know almost nothing about it and even less about functional programming.</p>

<p>What is functional programming, why and/xor where would I want to use it instead of non-functional programming and am I correct in thinking that C is a non-functional programming language?</p>

May be worth checking out this article on
F# "101"
on CoDe Mag recently posted.
Also,
Dustin Campbell has a great blog
where he has posted many articles on his adventures on getting up to speed with F#..
I hope you find these useful :)
EDIT:
Also, just to add, my understanding of functional programming is that
everything
is a function, or parameters to a function, rather than instances/stateful objects.. But I could be wrong F# is something I am dying to get in to but just dont have the time! :)