In this paper, we propose a congestion-aware network-coding-based opportunistic routing mechanism called CONCOR for wireless ad hoc networks. An existing mechanism called MORE shows good throughput in the single flow case; however, it suffers significant performance degradation in scenarios with multiple traffic flows due to the redundant transmission problem and the unbalanced load problem. To tackle these two problems, our proposed CONCOR contains two key components, namely, null space feedback and rank differential, which allows feedback of the received random network coding information with minimal overhead among neighboring nodes and enables a backpressure policy to balance the load along the path. The simulation results show that CONCOR outperforms MORE in all cases, even in the single flow scenario. Specifically, compared with MORE, CONCOR has better throughput due to fewer redundant transmissions and more equitable treatment of multiple competing flows.