Lo stesso Framework .NET di Microsoft ha una sua controparte: Mono, un'implementazione open source del Framework che ha come obiettivo primario quello di rendere multipiattaforma le applicazioni .NET.
Grazie a Mono è possibile scrivere applicazioni in C#, utilizzando le stesse tecniche che abbiamo analizzato in questa guida, ed eseguirle su piattaforma Linux o Windows.
Frutto di un intenso lavoro di sviluppo da parte di Ximian e di una nutrita comunità di sviluppatori di tutto il mondo, Mono si compone di:
* un compilatore per i linguaggi C# e VB .NET con cui è possibile sviluppare applicazioni compatibili con la piattaforma di Microsoft;
* un compilatore che consente a Linux di far girare applicazioni scritte sotto un qualsiasi altro sistema operativo che supporti .NET, primo fra tutti Windows;
* un modulo che aggiunge ad Apache il supporto per ASP .NET;
* un insieme di librerie che permette lo sviluppo di applicazioni utente e servizi Web in grado di girare sotto vari sistemi operativi.
Mono comprende anche l'ambiente di sviluppo MonoDevelop, una macchina virtuale Java ed il supporto a diversi altri linguaggi di script, tra cui Python e JScript.