Expressões do gerador versus compreensão da lista

Quando você deve usar expressões geradoras e quando deve usar a compreensão de lista no Python?

# Generator expression
(x*2 for x in range(256))

# List comprehension
[x*2 for x in range(256)]