Microsoft research has and interesting project called VirtualWiFi — a virtualization architecture for wireless LAN (WLAN) cards for Windows XP.
“It abstracts a single WLAN card to appear as multiple virtual WLAN cards to the user. The user can then configure each virtual card to connect to a different wireless network. Therefore, VirtualWiFi allows a user to simultaneously connect his machine to multiple wireless networks using just one WLAN card.”
A prototype implementation is available for XP. This allows you, for example, to make an ad hoc connection to another computer will simultaneously making an infrastructure connection to a AP for internet access.