PDF for offline use:

Xamarin.Mac applications can be compiled in two modes, one that uses the entire .NET 4.5 API available in a system Mono installation, and one that uses Xamarin's curated Mobile Profile.

Standard Profile

Xamarin.Mac applications use a system Mono. While Mono ships with many libraries and libraries, only a handful of these are supported by Xamarin for building native user experiences.

This is used for applications that need full access to the API. It is supported both by XamMac.dll as well as the new Xamarin.Mac.dllframework.

Mobile Profile

The Mobile Profile removes some assemblies that are not very useful in AppStore scenarios, among others, the entire System.Configuration assembly and all of its internal uses in the system frameworks.

This is only available as part of the Xamarin.Mac.dllframework.

Supported Assemblies

This is a list of the assemblies supported by Xamarin for your Xamarin.Mac applications.The detailed list of these is listed below. Some notable omissions include System.EnterpriseServices, the ASP.NET stack and Windows.Forms.

Assembly Added API Compatibility
Mono.CompilerServices.SymbolWriter.dll 1.0 For compiler writers.
Mono.Data.Sqlite.dll 1.2 ADO.NET provider for SQLite; see limitations.
Mono.Data.Tds.dll 1.2 TDS Protocol support; used for System.Data.SqlClient support within System.Data.
Mono.Security.dll 1.0 Cryptographic APIs.
monotouch.dll 1.0 This assembly contains the C# binding to the CocoaTouch API.
mscorlib.dll 1.0 Silverlight
OpenTK.dll 1.0 The OpenGL/OpenAL object oriented APIs, extended to provide iPhone device support.
System.dll 1.0

Silverlight, plus types from the following namespaces:

  • System.Collections.Specialized
  • System.ComponentModel
  • System.ComponentModel.Design
  • System.Diagnostics
  • System.IO.Compression
  • System.Net
  • System.Net.Cache
  • System.Net.Mail
  • System.Net.Mime
  • System.Net.NetworkInformation
  • System.Net.Security
  • System.Net.Sockets
  • System.Security.Authentication
  • System.Security.Cryptography
  • System.Timers
System.Core.dll 1.0 Silverlight
System.Data.dll 1.2 .NET 3.5 , with some functionality removed.
System.Data.Service.Client.dll 3.x Full oData client.
System.Drawing 1.0 System.Drawing API
System.Json.dll 1.1 Silverlight
System.Runtime.Serialization.dll ? Silverlight
System.ServiceModel.dll 1.1 WCF stack as present in Silverlight
System.ServiceModel.Web.dll ? Silverlight, plus types from the following namespaces:


  • System
  • System.ServiceModel.Channels
  • System.ServiceModel.Description
  • System.ServiceModel.Web
System.Transactions.dll 1.2 .NET 3.5; part of System.Data support.
System.Web.Services 1.1 Basic Web services from the .NET 3.5 profile, with the server features removed.
System.Xml.dll 1.0 .NET 3.5
System.Xml.Linq.dll 1.0 .NET 3.5


Portable Class Libraries

In addition to the Mac bindings, Xamarin.Mac can consume .NET Portable Class Libraries.