Some 3G networks might offer multicast which is the least effort for any server since it sends the message once regardless of the number of subscribers. Otherwise each listening device is going to have to open a unique socket to the server and the server is going to have to send each in turn the message. Depending on the nature of the message it might be possible to use UDP or TCP. That all rests on whether the message requires acknowledgement, whether it is volatile, whether there are many messages or just a few etc.
Something like JMS or a message bus would typically handle all this for you. I don't know if there is a port of JMS to android (e.g. OpenJMS) but its worth investigating.