The meanings are kind of muddied by loose usage but typically they should be:
DNS Server - An authoritative DNS server which answers queries about domains for which it holds authoritative records. This is the kind of DNS server you'd find at a hosting facility, for example, with DNS records for a site like, say, example.com.
DNS Resolver - Takes queries from clients and uses the root servers and other authoritative servers to find the answers directly. This is (sort of) the kind of thing you see at ISPs or places like Quad9/Google/CF which answer public client queries. (Though the ones clients hit may actually be forwarders, not resolvers)
DNS Forwarder - Takes queries from clients and forwards them on to another forwarder or a resolver.
dnsmasq is only capable of acting as a forwarder, so pfSense calls it a forwarder.
unbound is capable of acting as a resolver or a forwarder, depending on the configuration, but its default role is a resolver, so that's what it's called in pfSense.
bind can be any of the above depending on the configuration. Though it's typically considered "too heavy" to be used for forwarding and resolving roles, it does provide some features which can be useful in more complex scenarios.