Though Shakespeare never addressed this directly, we can make some educated guesses about why he chose Denmark for the setting of Hamlet.
It's important to consider that Shakespeare wrote Hamlet around the year 1600, and travel looked quite different than it does now. It would have taken quite some time for Shakespeare to go from England to Denmark. It's possible that he or a member of his acting company visited Denmark in order to weave some of the details into the plot.
There is a town in Denmark called Helsingør, which translates to the English spelling of Elsinore. It is located on the eastern coast, and a large castle exists there that would have been a strategic military stronghold, as it is located on the water. The threat of invasion is captured in the plot of Hamlet, which the King of Denmark at that time would certainly have had to contend with. Helsingør was also a travelers' mecca during this period because of its location and the presence of royalty.
In Hamlet , we also see...
(The entire section contains 3 answers and 998 words.)