Windows Phone 7 Execution Model
MSDN has a great article explaining the Execution Model for Windows Phone 7. In a nutshell, Windows Phone 7 supports 5 different lifecycles (Launching, Running, Closing, Deactivated, and Activated).
The interesting ones are Deactivated and Activated. These events are provided to perceive user that the phone supports ‘multi-tasks’. Developers can take advantage of these events to store the transient data into the ‘State’ dictionary object during Deactivated event and read them back during Activated event.
Keep in mind that there is a time limit imposed on the Deactivated event. Any actions taken in the Deactivated event handler must be completed within ten seconds or the Operating System will automatically terminate the application. Therefore, if you want to persist a huge amount of data, you may want to save them incrementally by taking advantage of the Running event.
For more details, refer to the following diagram.

August 1st, 2010 - 09:37
Hey Dimaz – nice post. Here’s a bunch of links that talk about the app lifecycle model of Windows Phone 7 and how it applies to building your own app. Hopefully some of them are useful!
http://nicksnettravels.builttoroam.com/blogengine/post/2010/07/12/Windows-Phone-7-beta-Who-Killed-My-Application.aspx
http://nicksnettravels.builttoroam.com/blogengine/post/2010/07/14/Windows-Phone-7-beta-Launcher-and-Chooser-Tasks-Cludge.aspx
http://nicksnettravels.builttoroam.com/blogengine/post/2010/07/15/Windows-Phone-7-beta-Application-Crashes-With-No-Exception-In-Visual-Studio.aspx
http://nicksnettravels.builttoroam.com/blogengine/post/2010/07/15/Windows-Phone-7-beta-Debugging-Tombstoned-XNA-Games-with-Visual-Studio.aspx