http://www.delphibasics.co.uk/Article.asp?Name=InterfaceRead the top.
Then imagine you have a function, that is not interested if the object is a car or a washing machine. The subroutine only wants to know about recycling.
Then you can pass the interface to the subroutine.
Otherwise you pass a TObject, and start doing: "if obj is TCar ... if obj is TWashingMachine..."