I've read the documentation, and it doesn't seem to differ, apart from how the parameters are named (`value` vs `parameters`).
the difference is mentioned in the descriptions of the functions though the functions do have essentially similiar arguments.
broadcast message will call the passed in function for all the scripts on the game object that have that function and for all children objects that also have that function.
sendmessage only calls that function for scripts on the gameobject that have that function.
it's a difference of iterating down into any child objects/scripts or just the parent objects.