Sorry it shouldn't sound selfish(?). I currently can't stream nor upload because my internet is making trouble. I already worked with tcp with .Net and Visual Basic. I already cut off a lot so, it's not the "whole code". It is the network classes I build with the relevant messages and how I send them and a small console workaround to see what is happening. I have just no idea why the first console gets the message it joined, the second parallel console gets the messages that two consoles are there, the third parallel console ... I also tested with a client on a second pc in my LAN. All clients receive a user broadcast by the server so the connections work. Also the client can send the a message to the server but this is extracted out of the example, so the connection works bidirectional. But I don't know why the a client doesn't get a user joined message when an other client joins afterwards.
I think I got why the server doesn't show that what he receives. Maybe the std::getline also stops output because the main thread waits here and everything is put out after I push enter to send a broadcast.