Вам не нужно сериализовать ваши объекты. Водитель сделает это за вас. Если вы работаете с классами C #, просто убедитесь, что ваш класс имеет общедоступный конструктор без аргументов и что сериализуемые вами значения представлены в виде открытых свойств. Такие классы обрабатываются автоматически. В качестве альтернативы вы можете работать на более низком уровне с BsonDocuments, но они также автоматически сериализуются для вас.
Все, что вам нужно сделать, чтобы сохранить объект класса C в базе данных:
var server = MongoServer.Create("mongodb://localhost/?safe=true");
var database = server.GetDatabase("test");
var collection = database.GetCollection<C>("test");
var c = new C();
// initialize c
collection.Insert(c);
Это все, что нужно сделать. Чтобы прочитать его обратно, просто напишите:
c = collection.FindOne();
хотя обычно вы также пишете запрос.