I plan to load only as much data as required in my app. Which means, that when the data is loaded via Wifi, I want to prefetch things. If the data is loaded via mobile plan
Have you tried the System.Net.NetworkInformation namespace on WP8. This package has a static method which returns the network status. You can then switch based on this information