In a multichannel wireless system, the performance of a link depends on many factors. The link quality is subject to temporal, spatial and spectral diversity, i.e. the SNR is time varying, link-dependent and channel-dependent. In addition, the performance also depends on MAC dynamics and the degree of congestion present in the channel. As a result, different links can experience different performance on the same channel, and the performance of a link varies across channels and time. An effective way to exploit and cope with the diversity in the wireless system is to use opportunistic channel switching. This technique allows a link to dynamically search for a channel/spectrum where it can maximize its performance at a given point of time. In addition, we observe that the link diversity can make it beneficial to have channels configured with different PHY/MAC parameters (e.g. different transmit power, data rates, or carrier sensing threshold). We refer to these as heterogeneous channels. A group of links may perform better under a set of parameters while a different group may perform better under a different set. In this paper we combine an opportunistic channel switching scheme with heterogeneous channels in multichannel Wireless LANs (WLANs) and show that the combined approach is effective in increasing link throughput and fairness.