It is clear that Mono Touch is part of the solution as it allows C# code to run on the IPhone, however Mono Touch wraps the IPhone API so does not provide a common API.
Have a look at http://www.phonegap.com/.
Support for Windows Phone 7 is coming ;)