Bi-level programming is a typical NP-Hard problem. It is a nonconvex optimization problem with upper and lower hierarchical structure and contains optimization problems in constraint conditions. This paper systematically reviews the researches and applications of bi-level programming in the context of urban transport, focusing on transportation network design problem and OD estimation/adjustment problem. Firstly, the domestic and international research topics and evolution progress are summarized by bibliometrics. Secondly, it takes pioneering research as the clue to look back upon important researches, the first systematic review paper, the first doctoral dissertation, the first Transportation Research Part-B's issue, and the first review paper in Chinese are introduced. Thirdly, the recent development of network design problems including road, transit and multi-modal, and the static and dynamic OD estimation problems are expounded. Fourthly, some general solutions are concluded, and the trends of solutions are discussed, the relationship between bi-level programming and MPEC is expressed. Finally, it points out three opportunities and challenges in the future should be addressed, including exploring and revealing of smart transportation, the optimization of modeling architecture, and building a computing platform to share and interact.