Mainly, it's for database performance reasons. If we keep them open, it slows the site down because it has to look through a lot of old stuff before it finds the active stuff. There's a similar issues with how stuff is displayed to users. In some cases, there can just been too many old/useless topic in people's faces if we keep topics open.
For the main/public forums (e.g. General or any of the marketplace forums), a topic is closed if it hasn't gotten a new post in 14 days. For user forums, it's 180 days.
There is also a forum archive that moves older topics/posts to a separate database table after 2 years (if closed). This is also for performance reasons. The archive is also not accessible to not signed on users.
Subscribers can re-open their topics as long as the topic isn't archived. Non-subscribers can pm me to request that I re-open their closed topic.