Wireless Sensor Networks (WSNs) consist of small nodes with sensing, computation, and wireless communication capabilities. Many routing, power management, and data dissemination protocols have been specifically designed for WSNs where energy awareness is an essential design issue. The focus, however, has been given to the routing protocols which might differ depending on the application and network architecture. In this paper, we present a survey of the state-of-the-art routing technique and a novel energy efficient hybrid routing protocol based on Rapid Spanning Tree and Cluster Head Routing. We first outline the design challenges for routing protocols in WSNs followed by a comprehensive survey of different routing techniques. Overall, the routing techniques are classified into four categories based on the underlying network structure: Data centric, hierarchical, location based and Quality of Service (QoS) based. Further, ManyToOne - A hybrid protocol based on Rapid Spanning Tree (RST) and Cluster Head Routing (CHR) uses clustering, which includes partitioning stage and choosing stage, namely, partitions the multi-hop network and then chooses cluster-heads; cluster-head is responsible for receiving, sending and maintaining information in its cluster. Then all cluster-heads will construct a Rapid spanning tree to prolong network lifetime, save energy and shorten path. RST provides faster spanning tree convergence after a topology change, thereby minimizing the energy consumed.