A note on Mono, Microsoft has been working with Novell on the creation and maintaining of Mono, as the Linux version of .Net. Also, they have released Moonlight, which is the Mono version of Silverlight. I don't know where their versions are in relation to .Net, but I do get the feeling that Microsoft and Novell are trying to keep Mono at least near .Net to provide more cross-platform ability.