Deleting GameObjects

I am presented with a situation where I need to delete all object under a GameObject.

I am unsure whether

parent =  new GameObject();


 for (int j = children - 1; j >= 0; j--) {

is more efficient. I think it all boils down to how Destroy is implemented. Does anyone know which is more efficient?

If you destroy a specific GameObject all of its children will be destroyed with it. You do not need to manually destroy individual children.