A relationship is a join.
Accept Just think of it terms of SQL:
a ‘relationship’ is a JOIN on another table
a ‘filter’ (contextual or not) is a WHERE clause.
‘Contextual’ just means the parameter comes from the current context, e.g. part of the URL, something in the session,
I think you described it well yourself. A relationship is a join. You are joining another table to the base table for the view you are creating. A contextual filter is an argument you are passing to the query created by the view.