My wife and I like to have dinner at home, we also like to go to the movies, we also like to go to bed before midnight. So the ideal movie time for us is between 8 and 9 pm. So we walked over to the local multi-screen theater and not a single movie begins between those hours. In fact, I do not think a movie began after 7:30 and before 9. Movies typically last about 1.5 hours add in previews and clean up time each showing needs about 2 hours. Probably the most likely reason movies start around 7 and a bit after 9, is that more people want to go movies at those times total. The other option for the movie theater is to show two shows one at 8 and one at 10 pm. I guess not enough people want to go at 10 pm. Another possibility is that by having movies around 7, perhaps they can convince people to buy more snacks. Now why is movie popcorn so expensive?
I suggest you see this classic slate article, about why wireless internet is free some places, which also discusses the price of movie popcorn.