Web sockets are a way of providing two way socket style interfaces between a web browser and a web server, with the server able to push information, rather than only responding to browser HTTP "pull" requests. It sounds from your question and clarifications that that's not what you need.
Plain sockets, however, are a good way of providing synchronous communications between applications. If the application receiving the messages can process them synchronously - as soon as they are sent - regular sockets may be a good solution.
Message queues are intended for asynchronous communications - cases where a message, after being sent, may need to be stored for a while before the recipient picks up the message and acts on it. Because of the need for storage, message queues require a separate server to store the message, or in some cases a database server if you already have one.
Plain sockets are simple, fast, and lightweight; message queues aren't really since they require setting up a separate server. If you need asynchronous message delivery, though, there may be no truly simple, fast, and lightweight solution, so message queues may be the next best thing.