SurferTim, thanks.
Your sketch and an advice by the Italian forum drove me on the solution. It doesn't works but with a little change it was fine:
waiting a response for 5 seconds or until a data is available.
I don't understand because such a problem was done only in case of direct connection on adsl router and not other cases (the pc used like router should be a worse situation ...)
Anyway, it's fixed and energies will be for the next problem

#include <SPI.h>
#include <Ethernet.h>
#include <Client.h>
byte mac[6] = { 0x90, 0xA2, 0xDA, 0x00, 0x36, 0x01 };
byte ip[4] = { 192, 168, 0, 4 };
const char url[]="/";
byte server[4] = { 74,125,65,99 };
Client client(server, 80);
int i;
int waiting;
char c;
void setup() {
for(i = 2; i < 10; i++){
pinMode(i, OUTPUT);
digitalWrite(i, LOW);
}
for(i = 14; i < 20; i++){
pinMode(i, OUTPUT);
digitalWrite(i, LOW);
}
Serial.begin(9600);
Ethernet.begin(mac, ip);
delay(1000);
}
void loop() {
if (client.connect()) {
client.print("GET ");
client.print(url);
client.println(" HTTP/1.1");
client.println();
Serial.println(" ");
Serial.println("reading ...");
waiting = 0;
while (!client.available() && waiting < 5000){
delay(1);
waiting++;
}
while (client.available()){
c = client.read();
Serial.print(c);
}
}
client.stop();
delay(1000);
Ethernet.begin(mac, ip);
}