It lies mostly in the Slavkov Forest, only the northwestern part of the town extends into the Sokolov Basin.
In the second half of the 12th century, a royal castle Loket was built on a landmark promontory within the Ohře River bend.
[3] In the early 15th century the royal town was fortified and turned into an important focal point of the Bohemian Crown.
[6] Loket hosts an annual opera festival, which takes place in an open-air amphitheatre with the castle as a backdrop.
In the days of the House of Luxembourg, the castle served as a temporary residence of members of the royal family.
[11] Loket was used, in conjunction with Karlovy Vary, to portray a Montenegrin town in the 2006 James Bond film Casino Royale.