Beh ... e' ovvio ... se inserisci il Clear nel DataArrival ...
Devi sempre tenere conto (nessuno lo fa perche' non si considera *come* funziona la comunicazione tra socket ...) che i dati *non* arrivano obbligatoriamente tutti insieme nell'evento DataArrival, ma a blocchi e l'evento viene chiamato piu' volte ...