Wireless networks suffer from a variety of unique problems such as low throughput and inadequate support for mobility. However, their characteristics such as the broadcast nature of the medium, and path diversity, provide opportunities for new design principles to address these problems. Network coding which exploits these characteristics has attracted extensive attention in recent years for their elegance on improving network throughput. This article introduces these advanced wireless network coding techniques and also addresses the potential on wireless network applications.