¿Qué diferencias hay entre INTERSECT y JOIN?

Ayudame por favor.

Crear datos:

CREATE TABLE sub1(id int,name nvarchar(7));
CREATE TABLE sub2(id int,name nvarchar(7));
INSERT INTO sub1 VALUES(1,'one1');
INSERT INTO sub2 VALUES(1,'one1');
INSERT INTO sub1 VALUES(2,'one2');
INSERT INTO sub2 VALUES(2,'one2');
INSERT INTO sub1 VALUES(3,'one3');
INSERT INTO sub2 VALUES(4,'one4');
INSERT INTO sub1 VALUES(5,'one5');
INSERT INTO sub2 VALUES(6,'one6'); 
INSERT INTO sub1 VALUES(NULL,NULL);
INSERT INTO sub2 VALUES(NULL,NULL);

Qué hay de diferente entre 2 consultas:

SELECT * FROM sub1 INTERSECT  SELECT * FROM sub2
SELECT sub1.id,sub1.name FROM sub1 JOIN sub2 ON sub1.id = sub2.id 

¿Qué diferencias hay entre INTERSECT y JOIN?

Respuestas a la pregunta(1)

Su respuesta a la pregunta