THe following should give you the serial number. Though it is not purely via mono. But this should work.
string serialNumber;
using (var p = new Process())
{
var serialRegex = new Regex("\"IOPlatformSerialNumber\" = \"(\\S+)\"");
p.StartInfo = new ProcessStartInfo("/usr/sbin/ioreg",
"-c IOPlatformExpertDevice");
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
serialNumber = serialRegex.Match(p.StandardOutput.ReadToEnd()).Groups[1].Captures[0].Value;
p.WaitForExit();
}