In the last decade, various algorithms have been developed for extracting the digital terrain model from LiDAR point clouds. Although most filters perform well in flat and uncomplicated landscapes, landscapes containing steep slopes and discontinuities are still problematic. In this research, we develop a novel bare-earth extraction algorithm consisting of segmentation modeling and surface modeling based on our previous work, forest canopy removal. The proposed segmentation modeling is built on a triangulated irregular network and composed of triangle assimilation, edge clustering, and point classification to achieve better discrimination of objects and preserve terrain discontinuities. The surface modeling is proposed to iteratively correct both Type I and Type II errors through estimating roughness of digital surface/terrain models, detecting bridges and sharp ridges, etc. Finally, we have compared our obtained filtering results with twelve other filters working on the same fifteen study sites provided by the ISPRS. Our average error and kappa index of agreement in the automated process are 4.6% and 84.5%, respectively, which outperform all other twelve proposed filters. Our kappa index, 84.5%, can be interpreted as almost perfect agreement. In addition, applying this work with optimized parameters further improves performance.