Difference #1: CTEs can be recursive
Difference #2: CTEs are reusable
Difference #3: CTEs can be more readable
One More Difference: CTEs Must Be Named