Las respuestas aquí no son completamente correctas. Cerca, pero hay un caso límite.
La diferencia es que $ ('body') realmente selecciona el elemento por el nombre de la etiqueta, mientras que document.body hace referencia al objeto directo en el documento.
Eso significa que si usted (o un script deshonesto) sobrescribe el elemento document.body (¡lástima!) $ ('Body') seguirá funcionando, pero $ (document.body) no. Entonces, por definición, no son equivalentes.
Me atrevería a suponer que hay otros casos extremos (como elementos identificados globalmente en IE) que también activarían lo que equivale a un elemento de cuerpo sobrescrito en el objeto del documento, y se aplicaría la misma situación.