ObjectId jest binarny, przez co zajmuje mniej miejsca. Identyfikatory obiektów mają również czynnik sortowania — w końcu będą w kolejności wstawiania (lub bardzo zbliżonej), pozostając niepowtarzalne. Sortowanie może być dobre dla niektórych rzeczy, ale niepożądane dla innych (np. klucze odłamków). Możesz również wyodrębnić znacznik czasu (druga rozdzielczość) z ObjectId, co może być wygodne.
Poza tym powiedziałbym, że nie ma dużej różnicy.