TLDR
If you care about performance use
len(''.join(strings))
else using map
will suffice without sacrificing code readability or a lot of performance
sum(map(len, strings))
Performance metrics
Although I agree with the general consensus that when using Python your first priority should not be writing efficient and scalable code, I think it would be beneficial for this post to have some timings for the proposed answers.
Using the words from the first paragraph of lorem ipsum (list of strings excluded for the sake of brevity)
In [3]: timeit("""
...: length = 0
...: for s in strings:
...: length += len(s)
...: """, globals=globals())
Out[3]: 5.197531974001322
In [4]: timeit("sum(len(s) for s in strings)", globals=globals())
Out[4]: 4.925184353021905
In [5]: timeit("sum(map(len, strings))", globals=globals())
Out[5]: 1.9876644779578783
In [6]: timeit("len(''.join(strings))", globals=globals())
Out[6]: 0.6793132669990882
So for large list of strings @Auspex is clearly to be prefered.