Read original post at Rob Irving's Blog
This year at Build I went to a few sessions covering the new Background Task infrastructure available for Windows Phone 8.1 Apps. The Microsoft Program Managers running these sessions all echoed a common theme: you should write your background task code in C++.
Why C++ you might ask? The main reason is conservation of memory resources. If you write your background tasks in C# you need to load up the Common Language Runtime and according to the Microsoft PMs at Build this could take 3-4 MB of memory. These days 3-4 MB of memory doesn’t sound like a whole lot, but when you’re writing background task code, you don’t have much to work with. Below is a chart of the memory available to background tasks on different device types.