Reducing energy consumption in wireless communications has attracted increasing attention recently. Advanced physical layer techniques such as multiple-input multiple-output (MIMO) and orthogonal frequency division multiplexing (OFDM), cognitive radio, network coding, cooperative communication, etc.; new network architectures such as heterogeneous networks, distributed antennas, multi-hop cellulars, etc.; as well as radio and network resource management schemes such as various cross-layer optimization algorithms, dynamic power saving, multiple radio access technologies coordination, etc. have been proposed to address this issue. In this article, we overview these technologies and present the state-of-the-art on each aspect. Some challenges that need to be solved in the area are also described.