The increasing demand for real-time applications in Wireless Sensor Networks (WSNs) has made the Quality of Service (QoS) based communication protocols an interesting and hot research topic. Satisfying Quality of Service (QoS) requirements (e.g. bandwidth and delay constraints) for the different QoS based applications of WSNs raises significant challenges. More precisely, the networking protocols need to cope up with energy constraints, while providing precise QoS guarantee. Therefore, enabling QoS applications in sensor networks requires energy and QoS awareness in different layers of the protocol stack. In many of these applications (such as multimedia applications, or real-time and mission critical applications), the network traffic is mixed of delay sensitive and delay tolerant traffic. Hence, QoS routing becomes an important issue. In this paper, we propose an Energy Efficient and QoS aware multipath routing protocol (abbreviated shortly as EQSR) that maximizes the network lifetime through balancing energy consumption across multiple nodes, uses the concept of service differentiation to allow delay sensitive traffic to reach the sink node within an acceptable delay, reduces the end to end delay through spreading out the traffic across multiple paths, and increases the throughput through introducing data redundancy. EQSR uses the residual energy, node available buffer size, and Signal-to-Noise Ratio (SNR) to predict the best next hop through the paths construction phase. Based on the concept of service differentiation, EQSR protocol employs a queuing model to handle both real-time and non-real-time traffic. By means of simulations, we evaluate and compare the performance of our routing protocol with the MCMP (Multi-Constraint Multi-Path) routing protocol. Simulation results have shown that our protocol achieves lower average delay, more energy savings, and higher packet delivery ratio than the MCMP protocol.