If you have a loud vehicle, are in loud traffic, have a hearing problem, prefer privacy, or just prefer a headset, the headset is better.
The problem with a headset is that psychologically we tend to concentrate on a voice in our ear, almost to the exclusion of everything else. That's why even people using headsets cause accidents - they're oblivious to the traffic around them. (If you're in an office, on an important call, and someone walks into your office, what do you do? Unless it's your boss, you hold up a hand or a finger to stop the person from talking, right? You're concentrating on the call.)
A speaker is more like talking to someone in the car - we still look around at the traffic. It's a bit safer.
(Talking while driving isn't safe at all, but that little bit of difference may mean the difference between stopping with your breaks, or by using the 10 foot steel beam hanging off the truck in front of you, with the big red flag on it, that you were too involved in the call to notice. Ouch!)
I try to not be involved in any non-emergency calls while driving - and if I have to call the police, I'm already pulling over to the side (to hop out and see if anyone's injured, so I can report the situation properly). (And I have decades of experience using two way radios while driving - I just prefer safety over convenience. I have a tin ear, so learning to play a harp will be a bit difficult.)