D-Fi is a novel Wi-Fi PHY/MAC protocol that exploits frequency diversity while maintaining protocol efficiency with minimal overhead. It achieves this by leveraging an OFDM-based Bloom filter to synergistically integrate channel quality estimation and contention-based channel allocation. D-Fi resolves false positives from the Bloom filter using machine learning and explores new channel quality using a decentralized multi-armed bandit algorithm. Experiments show D-Fi provides up to 3x throughput improvement over existing solutions.