The Elegant Universe by Brian Greene
I read this precursor of "The Fabric of the Cosmos" a couple of years after the later book, which was written 5 years after this one. It covers much of the same ground but has a slightly different purpose – this book is primarily a description of string theory as it stood in 1999, while the later book focuses more on setting string/M-theory in the historical context of our understanding of the fundamental nature of things from Einstein’s modifications of Newtonian mechanics through to the present day.
"The Elegant Universe" goes into more detail on some technical aspects of the theories, particularly the dualities of the different versions of string theory and their consequent unification under M-theory, and the curious result that the radii of the tiny hidden ‘curled up’ dimensions are somehow equivalent (symmetric) to their own inverses (i.e. a radius of R is in a sense equivalent to a radius of 1/R). Please don’t lose any sleep worrying about this, even if you start wondering whether the 4 extended dimensions (3 spatial, 1 time) with which we are familiar have their equivalent formulation as tiny curled up dimensions and if so what that might mean for the world (and us) as we know it.
There’s also more detail on black holes than in the later book, including the intriguing fact that they are not truly black (as proved by Stephen Hawking), and an explanation of why string theory needs 10 dimensions but M-theory needs 11. It’s all good stuff, and presented in the same non-mathematical way as "Cosmos". For the tiny minority of people (physicists and cosmologists) who understand (some of) all this, it must be an exciting time. There’s a feeling that we’re getting close to a theory of everything but one suspects the ultimate formulation, if it can be achieved, is still some way away and will probably look different again from what we have now.