I think I might have an explanation of what is wrong. It appears that the client is trying to receive on a port that it hasn't bound. Notice how the code below is trying to receive on port 1357, but earlier it was bound to port 0 (which amounts to an ephemeral, or random, port assigned by the OS).
Client:
...
if(!Client.Bind(0))
return 1;
...
Client.Send(Name, Server, 1357);
...
if(Client.Receive(Ser, Server, 1357) == sf::Socket::Done){
...
Client.Close();
Normally, when creating a network application your server has a fixed port and the client uses an ephemeral port like you have already shown above. When the client wants to send data to the server is does so to the fixed port provided above. But when the client wants to receive data from the server it must do so on the ephemeral port assigned by the OS. I'm not sure how SFML handles returning ephemeral ports, there is probably some Client.GetPort() call that can be made to determine the ephemeral port assigned. If that is the case, you should be able to do a Client.Receive using this port and prevent a socket not bound error. Also, you must be careful to keep track of each clients ephemeral port as they connect on the server side of your code. The connection packet received can be used to obtain the ephemeral port being used by the client so that all future server messages sent from the server to the clients will use the correct ephemeral port.
Hopefully this information was useful (and accurate), please let us know how it works out.