The subject is rich, complex and difficult. Moreover it is extremely inexact and non-empirical, since many British forms and names have been corrupted over the years, represent places which have over time been occupied by many different groups of people speaking different languages with similar words meaning different things, or are in fact derived from words for which there are no extant known definitions.
The languages which have shaped and informed the nomenclature of Britain are many and diverse: pre-Celtic languages, various Celtic languages, Latin, Anglo-Saxon, Norman French, Old Norse, and a few others besides.
Sometimes, however, it is easy. The modern form of the name may reflect its original meaning. A good example of this is Box Hill, Surrey which is exactly what it says it is: a hill upon which box once grew. Sometimes it isn't: Bedlam, Yorkshire has nothing to do with the lunatic asylum of earlier times, but is a corruption of the Anglo-Saxon bodle lumm, "the place of the buildings".
See also:
[to be continued: ] user:sjc