The unity client works perfectly if i put the code snippet below just after the yield return StartCoroutine(client.Connect());

while (true)
{
    client.Recv();
    yield return 0;
}

If i don't use this code, then the client doesn't even connect to the server let alone creating a room.