jQuery .prop() vs .attr()

In jQuery it is sometimes confusing wether to use the .prop() or the .attr() method to set attributes of html elements. I recently found it interesting to read on the jQuery manual that .prop() should be used for certain situations: „Properties generally affect the dynamic state of a DOM element without changing the serialized HTML attribute. Examples include the value property of input elements, the disabled property of inputs and buttons, or the checked property of a checkbox.“.
So they strongly encourage developers to use the .prop() method when manipulating actual properties like checked, disabled, value. Is important to note that there is also a .removeProp() method provided by jQuery. But as it has no counter part like .addProp() it should not be used to unset a property, as there is no way to add it back again. It is rather provided to finally remove a property from a html element.