Ensembl BioMart actually has a nice graphical explanation of this if you use the web interface. You can see their pictures for the two options below:
gene_exon_intron
transcript_exon_intron
The gene_exon_intron option basically gives you one sequence per gene, containing all the of all exons and introns regardless of splicing. Even if a gene has two isoforms, and they contain mutually exclusive exons, you won't know about it using this option. On the other hand transcript_exon_intron returns one sequence per transcript.