
There are certain numbers every Windows Phone developer should be familiar with: 20, 50, 90, 400, and 2.
20 MB is the maximum size of a XAP file that can be downloaded over the air. XAPs larger than this must use Wi-Fi or the Zune desktop app to be downloaded to a device.
50 MB is the maximum size of additional content that can be downloaded after installation to make the application functional. If more than 50 MB is needed to make the application functional, this must be noted in the marketplace submission and a notification should be provided to the end-user of the fact.
90 MB is the memory usage limit for your app assuming the device has the min-spec 256 MB of RAM. Of course, another way to look at this is that Windows Phone 7 reserves 166 MB of RAM for itself – your app can use the rest. If the device has 512 MB of RAM, then your app gets 256 + 90.
400 MB is the max allowable size for your XAP.
2 Gigs is the total size your app can grow to. This includes the XAP as well as any data you throw into isolated storage -- though some people have proposed that the 2 Gig limit applies only to isolated storage usage. (If you check the isolated storage quota programmatically, it appears to be unlimited which, obviously, isn’t the case).
The 2 Gig limit seems to have been lifted. To read more about this, see the old MSDN forums.