Experimental studies have shown that traditional rate adaptation schemes for 802.11 wireless networks suffer from significant throughput degradation in highly congested networks. To address this problem, this paper makes the following two main contributions. First, we design a method to accurately estimate the per-packet transmission times, and we use these measurements to provide a broad classification of the network state and to identify network congestion. Second, we design a new Throughput-Aware Rate Adaptation (TARA) scheme, which uses the congestion estimates to mitigate the negative impact of link-layer collisions on the operations of rate adaptation, without requiring changes in the 802.11 MAC specification. Another key feature of our solution is to minimize probing overheads and limit unnecessary rate decreases by predicting the throughput gain that could be brought about by a change in the transmission rate. Through experiments conducted across a variety of network scenarios and traffic patterns, we show that TARA achieves significantly higher throughput than the other rate adaptation algorithms implemented in the legacy Madwifi driver.