Best of Articles :: Microsoft Smartphone Programming
[This (sort of) book is a collection of different articles combined under related chapters]
Chapter 1: Introduction to the .NET Compact Framework
Fundamentals of Microsoft .NET Compact Framework Development for the Microsoft .NET Framework Developer
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/net_vs_netcf.asp?frame=true>
What's New in Smartphone 2003
<http://msdn.microsoft.com/library/en-us/dnwmnew/html/manew_sp03.asp?frame=true>
Develop for Windows Mobile 2003 for Smartphone Using the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/Smartphone_2003.asp?frame=true>
An Introduction to Microsoft SmartPhone, and Programming SmartPhone using C#
<http://www.codeproject.com/netcf/SmartphoneIntroCSharp.asp>
Design Considerations for Microsoft Smartphone Applications
<http://www.oreillynet.com/pub/a/wireless/2004/01/07/smartphone.html>
Chapter 2: The Smartphone User Interface
Write Apps for the Smartphone without Dumbing Down Your UI
<http://www.devx.com/wireless/Article/21291>
Creating a Multiple Form Application Framework for the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfuiframework.asp?frame=true>
How to Create a Microsoft .NET Compact Framework-based Image Button
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ImageButton.asp?frame=true>
Crafting Smartphone User Interfaces Using .NET Compact Framework
Develop for the SmartPhone Using Techniques You Already Know
<http://www.devx.com/wireless/Article/17968>
Chapter 3: Smartphone Controls
Creating Controls by Hand in the .NET Compact Framework
<http://www.devx.com/getHelpOn/10MinuteSolution/17430>
.NET Compact Framework Sample: Hosting A Native Windows Control
Developing Custom Controls in C# with Smart Device Extensions
<http://msdn.microsoft.com/library/en-us/dncenet/html/customctrlssde.asp?frame=true>
Chapter 4: Graphics
Creating a Microsoft .NET Compact Framework-based Animation Control
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/animationcontrol.asp?frame=true>
Chapter 5: Files and Directories
Working with files on Smartphone devices with the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/SPFiles.asp?frame=true>
Chapter 6: Mobile Web Services
Consuming Web Services with the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfwebservices.asp?frame=true>
Chapter 7: Working with Unmanaged Code
Accessing Phone APIs from the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfphoneapi.asp?frame=true>
Advanced P/Invoke on the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfadvinterop.asp?frame=true>
An Introduction to P/Invoke and Marshaling on the Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfintrointerp.asp?frame=true>
Creating a P/Invoke Library
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PInvokeLib.asp?frame=true>
P/Invoking Serial APIs in the Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PISAPICF.asp?frame=true>
Using dumpbin.exe as an Aid for Declaring P/Invokes
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfdumpbinpinvoke.asp?frame=true>
Chapter 8: Deploying Smartphone Application
Deployment Patterns for Microsoft .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/DeploymentPatterns.asp?frame=true>
Smartphone 2003 Application Deployment Demystified
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/sp_2003_app_deploy_demyst.asp?frame=true>
Chapter 9: Interoperability
Connecting Microsoft Mobile Devices to Java Infrastructures
<http://www.sys-con.com/story/?storyid=47342&DE=1>
Architecting Disconnected Mobile Applications Using a Service Oriented Architecture
<http://msdn.microsoft.com/library/en-us/dnppc2k3/html/develop_disconnect_mob_apps.asp?frame=true>
Chapter 10: Game Programming with Smartphone
Games Programming with Cheese: Part One
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/gamesprogwithcheese.asp?frame=true>
Games Programming with Cheese: Part Two
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/playingthegame.asp?frame=true>
Games Programming with Cheese: Part Three
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/completingthegame.asp?frame=true>
Games Programming with Cheese: Part Four
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/agameapplication.asp?frame=true>
Chapter 11: Advanced Topics
Security:
A Practical Guide to the Smartphone Application Security and Code Signing Model for Developers
<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/smartphone_security.asp?frame=true>
Sending and Receiving SMS Messages:
Receiving SMS Messages Inside a Managed Application
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ReceivingSMSMessages.asp?frame=true>
Sending SMSs from your Microsoft .NET Compact Framework-based Applications
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfsendsms.asp?frame=true>
Debugging:
Microsoft .NET Compact Framework Debugging
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/CompactFXDebug.asp?frame=true>
Performance:
An Overview of the .Net Compact Framework Garbage Collector
<http://weblogs.asp.net/stevenpr/archive/2004/07/26/197254.aspx>
Microsoft .NET Compact Framework Multi-threading Tips
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfmultithreadedapp.asp?frame=true>
Microsoft .NET Compact Framework Background Processing Techniques
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/BackgroundProcess.asp?frame=true>
Improving Microsoft .NET Compact Framework-based Application Form Load Performance
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfimproveformloadperf.asp?frame=true>
Developing Well Performing .NET Compact Framework Applications
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfperf.asp?frame=true>
.Net Compact Framework Advanced Memory Management
<http://weblogs.asp.net/mikezintel/archive/2004/12/08/278153.aspx>
Miscellaneous:
Creating Self-Updating Applications With the .NET Compact Framework
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/AutoUpdater.asp?frame=true>
Improving .NET Compact Framework HTTP Communications using HttpWebRequest and Custom ASP.NET Providers
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/httpcomm.asp?frame=true>
Connecting a Smartphone 2003 Application to a Remoting Infrastructure
<http://www.devx.com/dotnet/article/22460>
.NET Compact Framework Mobile Web Server Architecture
<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/NETCFMA.asp?frame=true>
Chapter 12: What's Next
What's New in the .NET Compact Framework 2.0
<http://msdn.microsoft.com/library/ws1c3xeh.aspx>
Other Resources (Links gathered from comments)
Pragmatic Smartphone Application Hints and Tricks:
http://homepages.inspire.net.nz/~gambit/Article/
Programming Smartphone 2002/2003/SE with Embedded Visual Basic (eVB):
http://www.omnisoft.com/articles/spevb/default.asp
Smartphone "Tip-o-the-Day"
http://spaces.msn.com/members/lesgainous/