Non destructive workflow when editing materials

I think I get it. I would create an instance of that material, apply it on the mesh and edit the instance. Then (in another project) I can use the original flag, becase nothing changed in the original material. I hope I understand this correctly.

Quick follow up question: When I heavily edit a material instance with many parameters, and then I decide I want to revert all the changes to their default values, the only way to do that is to click every little white arrow on the right of each parameter? Or is there another, faster way?

Thanks!