Fast app switching is where the app is deactivated, but is not tombstoned. It now goes into a dormant state. If memory is required, the app may be tombstoned from this dormant state. If the app is activated and it is in the dormant state, it is merely activated and continues running as if nothing really happened (you will need to reconnect any sockets, re-acquire the camera, etc if required). If the app was tombstoned, it goes through the same re-activation as apps currently do.
Multitasking where is the new background agents come into play. Background agents are a separate assembly distributed with your app that can be set to run while your app is not running. They will get 15 seconds of execution time every 30 minutes (as long as those figures haven’t changed since the announcement at MIX11) for up to two weeks.
From here.
Also: From Tombstoning to Fast Application Switching