Gianpaolo Carraro (one of my counterparts in Microsoft EMEA) pointed me to this presentation on the current status of Mono, delivered recently by Miguel de Icaza.

It's impressive to see how rapidly Mono is maturing as a project. With a fairly small development team, they've implemented the entire ISO/ECMA specification for the CLI and C#, running on Linux and Windows. They've more or less completed the fundamentals, and are already working on future C# language features such as generics and anonymous methods that won't even make it into the Microsoft .NET Framework until Whidbey. The Mono project also includes an extensive set of .NET data providers, supporting DB2, Interbase, MySQL and Sybase; many of these also work with the Microsoft implementation.

Cornell have done a performance comparison between the JIT execution engines in .NET, Mono and SSCLI (Rotor), and it's clear from both the paper itself and a follow-up posting by Miguel that they're heading towards the same ballpark. Mono has an interesting year ahead of it, particularly as people start to use it to build sophisticated Linux applications in C#...