.NET implementations supported by EF Core

We want EF Core to be available anywhere you can write .NET code, and we're still working towards that goal. While EF Core's support on .NET Core and .NET Framework is covered by automated testing and many applications known to be using it successfully, Mono, Xamarin and UWP have some issues.

The following table provides guidance for each .NET implementation:

.NET implementation Status EF Core 1.x requirements EF Core 2.x requirements (1)
.NET Core (ASP.NET Core, Console, etc.) Fully supported and recommended .NET Core SDK 1.x .NET Core SDK 2.x
.NET Framework (WinForms, WPF, ASP.NET, Console, etc.) Fully supported and recommended. EF6 also available (2) .NET Framework 4.5.1 .NET Framework 4.6.1
Mono & Xamarin In progress (3) Mono 4.6
Xamarin.iOS 10
Xamarin.Mac 3
Xamarin.Android 7
Mono 5.4
Xamarin.iOS 10.14
Xamarin.Mac 3.8
Xamarin.Android 7.5
Universal Windows Platform EF Core 2.0.1 recommended (4) .NET Core UWP 5.x package .NET Core UWP 6.x package

(1) EF Core 2.0 targets and therefore requires .NET implementations that support .NET Standard 2.0.

(2) See Compare EF Core & EF6 to choose the right technology.

(3) There are issues and known limitations with Xamarin which may prevent some applications developed using EF Core 2.0 from working correctly. Check the list of [active issues]( for workarounds.

(4) Earlier versions of EF Core and .NET UWP had numerous compatibility issues, especially with applications compiled with the .NET Native toolchain. The new .NET UWP version adds support for .NET Standard 2.0 and contains .NET Native 2.0, which fixes most of the compatibility issues previously reported. EF Core 2.0.1 has been tested more thoroughly with UWP but testing is not automated.

For any combination that doesn’t work as expected, we encourage creating new issues on the EF Core issue tracker. For Xamarin-specific issues use the issue tracker for Xamarin.Android or Xamarin.iOS.