If you already develop for Windows Phone, the first bit of good news about Windows Phone 8 is that your existing Windows Phone 7.5 app will just work as is.
However, if you want to use some of the cool features of WP8 then you’ll need to write some new code and re-submit the app. This means you’ll then need to consider whether to continue support WP7.5, and thus maintain two versions of the code.
If you have a WP7.5 game using XNA and want to move it to Windows Phone 8, then this time it will be a near-complete rewrite. XNA is no longer supported as a development choice on Windows Phone. Instead you will be looking at DirectX and C++. This is going to give you the potential for top performance but rules out any re-use of existing C#/XNA code.
One of the most elegant transitions we’ve experienced is from Windows 8 to Windows Phone 8. There is a clear path if you start from a Windows 8 code base and then adapt and replace various pieces for the phone. Use the MVVM architecture for the app, look out for API discrepancies, and move all Charms integration features into the main Windows Phone app.