I have a server with clients. The clients each get a unique Id from the server. Each client knows about the other connected clients Ids.
I want the client to raise an event in other clients. I don't want all the clients to receive the events, but only selected ones.

A simple example: I have a chat program. There are 100 clients, each is involved in a chat with exactly one other clients (50 pairs). When a client want to send a message it raises an event on the server, and only the client in the chat receive this message.

By raising an event normally all clients will need to check if the event is relevant for them. I don't want the event to be raised in the first place, and I only ant to add the code to the server and not in the listening client.

How to do that? Any suggestions?