With the development of underwater navigation and underwater communication, it remains difficult to obtain time delay measurements after propagating long distance. This paper proposes an improved high-accuracy time delay measuring method for long distance underwater channel propagation. First, by sending an encoded signal, the signal acquisition is carried out at the receiving end. Then, to improve signal to noise ratio (SNR), bandpass filtering is carried out on the receiving end. Next, considering the random changes in the underwater sound propagation channel, a strategy is proposed to select the optimal time window for cross-correlation. Then, new regulations are proposed to calculate the cross-correlation results. To verify the effectiveness of the algorithm, we compared it with other algorithms under low SNR conditions using Bellhop simulation data. Finally, the accurate time delay is obtained. With underwater experiments over different distances, the method proposed by the paper achieves high accuracy. The error is about 10−3 s. The proposed method makes a contribution to underwater navigation and communication.