// Your MongoDB connection string. var connectionString = "mongodb://localhost:27017"; BsonSerializer.RegisterSerializer(new GuidSerializer(GuidRepresentation.Standard)); //uncomment this line, and all will work properly, but this will be obsolete //BsonDefaults.GuidRepresentation = GuidRepresentation.Standard; // Create a MongoClient object. var client = new MongoClient(connectionString); // Get your database (replace "yourDatabase" with your database name). var database = client.GetDatabase("test"); // Get your collection (replace "yourCollection" with your collection name). var collection = database.GetCollection("guids"); TestObject testObject = new TestObject { Id = 1, Name = "aaaaaaaaaa", Guids = new List() { Guid.NewGuid(), Guid.NewGuid() }, Objects = new Dictionary() }; testObject.Objects.Add("guids", new List() { Guid.NewGuid(), Guid.NewGuid() }); testObject.Objects.Add("guid", Guid.NewGuid()); // Insert the TestObject instance into the collection. collection.InsertOne(testObject); Console.WriteLine("TestObject inserted successfully."); Console.ReadKey(); public class TestObject { [BsonId] public int Id { get; set; } public string Name { get; set; } public IEnumerable Guids { get; set; } public Dictionary Objects { get; set; } }