Within the foreseeable future, the growing number of mobile devices, and their diversity, will challenge the current network architecture. Furthermore, users will expect greater data rates, lower latency, lower packet drop rates, etc. in future wireless networks. Ultra Dense Networks (UDN), considered to be one of the best ways to meet user expectations and support future wireless network deployment, will face multiple significant hurdles, including interference, mobility, and cost. In this paper, we review existing research efforts toward addressing those challenges and present future avenues for research. We first develop a taxonomy to review and describe existing research efforts. Next, we focus on inter-cell interference, handover performance, and energy efficiency as the key techniques to addressing the most pressing challenges. Finally, we present several future research directions, including emergent Internet-of-Things (IoT) applications, security and privacy, modeling and realistic simulations, and relevant techniques.