There's really no such thing as sending "JavaScript" to mongod from the .NET driver.
Your choice is between:
1. Using the general purpose BsonDocument object model (similar to JSON)
2. Using C# classes and serializing them to BSON
Serialization is handled by a serializer. The driver has a general purpose serialization mechanism based on "class maps". A class map controls how a C# class is mapped to and from BSON. There is a BsonClassMapSerializer that serializes data based on what the class map tells it to do.
Alternatively you could write your own custom serializer that should outperform the BsonClassMapSerializer, but probably by not that much.
My guess is that the following are in increasing order of performance:
1. BsonClassMapSerializer
2. Using the BsonDocument object model
3. Using a custom serializer for each C# class
But the difference between 1 and 3 is probably no more than 30% (IIRC from tests I did a long time ago), which is why most people just use the built in class map based serializers.