Send messages to different gameobjects

Is it possible for gameobject A to broadcast to many other gameobjects that are not its children?

SendMessageUpwards will work for ancestors, which (if shared) can broadcast the message.

You could also tag them, and do a FindGameObjectsWithTag into a GameObject array, then cycle through them in a loop using GetComponent to access the scripts directly. This may be more efficient.