Main difference between UNION and UNION ALL is that UNION removes duplicate records, but UNION ALL does not remove duplicate records.
E.g. Consider two tables A and B
UNION of A and B = 10, 20, 15
UNION ALL of A and B = 10, 12, 15, 20
Performance of UNION ALL is considered better than UNION, since UNION ALL does not require additional work of removing duplicates.