Passing in an empty criteria set worked, along with setting the permission in the AssemblyInfo file.
LocationManager mgr = (LocationManager) GetSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
String best = mgr.GetBestProvider(criteria, true);
//since you are using true as the second parameter, you will only get the best of providers which are enabled.
Location location = mgr.GetLastKnownLocation(best);
<uses-permission android:name="android.permission.NETWORK" />