In SQL Server 2016, what is the difference between Always Encrypted and Transparent Data Encryption? As I write this I am still awaiting the official release of SQL Server 2016 so that we can explore the usefulness of its "Always Encrypted" feature. 

I would just like to know what the specific differences will be between Always Encrypted &amp; the currently available Transparent Data Encryption in SQL Server 2016 so that we can make the correct decision for future projects.
Downsides of Transparent Data Encryption compared to Always Encrypted:


Only protects data at rest - backups and data files are "safe" but data in motion or in memory is vulnerable
Whole database only
All data is encrypted the same way
Backup compression can take longer and be counter-productive


Well, actually, there are some improvements here in SQL Server 2016 that defy what we've typically known about trying to compress encrypted data - it's much better than previous versions, but presumably still worse than only encrypting a handful of columns (untested)

tempdb also inherits encryption – stays even after disabling TDE
Requires Enterprise Edition
Data always accessible to sysadmin


Always Encrypted addresses all of these issues in part or in full:


Data is protected at rest, in motion, and in memory - much more control over certs, keys, and exactly who can decrypt data
Can be just a single column
Encryption type is a choice:


Can use deterministic encryption to support indexes and point lookups (say, SSN)
Can use random encryption for higher protection (say, credit card number)

Since it's not database-wide, backup compression isn't necessarily affected - of course the more columns you encrypt, the worse luck you'll have
tempdb is uninvolved
As of SQL Server 2016 Service Pack 1, Always Encrypted now works in all editions
Data can be protected from sysadmin (but not sysadmin AND Windows security/cert/key admins, in other words you can separate responsibility as long as those two groups don't collude)


There is a limitation, though, and that is that not all drivers and applications can deal with the encrypted data directly, so in some cases this will require updating/changing drivers and/or modifying code.