The storage reliability of the flash memory suffers from serious challenges due to various noises such as inter-cell coupling interference and retention process, especially as the device size continuously scales down and the number of cell state levels increases up. Since the threshold voltage distributions shift because of these noises, the conventional pre-defined fixed thresholds will cause misreading errors when read the data. Motivated by the unidirectional shift characteristic of the voltage distributions caused by inter-cell coupling interference and retention process, this paper proposed the concept of dynamic thresholds, including dynamic verification thresholds (DVTs) and dynamic read thresholds (DRTs) to improve the flash reliability. Moreover, based on the dynamic thresholds, we also presented a signal processing scheme with DVTs to compensate the inter-cell coupling interference, and introduced two coding schemes with DRTs for tolerating the retention process, which can also be generalized to asymmetric channels. Analyses and simulation results show that the raw bit error rate (BER) can be significantly reduced by using dynamic thresholds.