hi,
was du für eine komponente verwendest ist eigentlich egal. du könntest genausogut die winapi socket implementierung verwenden.
wenn du durch den firewall nicht durchkommst liegt das sicherlich an dem port auf dem dein server läuft. denn diesen port sollte dein firewall nicht blockieren.
um eine nachricht an einen client zu senden verwendest du am besten TServerSocket.Socket.Connections. das ist die liste aller beim server gemeldeten clients, jeweils in form von TCustomWinSocket's über deren methoden du dann dem zugehörigen client etwas senden kannst.