Preparing in advance is immensely useful, but to improve your speaking skills to another level you need to master the ability to improvise on a broader range of topics. Clearly they have to be topics you know something about, so reading and listening to a variety of content will be useful. But that preparation alone is not enough; you will also need to improve your technique and there are three fairly simple rules that will help you do just that.
Start With an Idea. A speech will be much stronger when it is constructed around a well-formed idea -- you might recognize this as being at the heart of the success of the TED/TEDx format. Just talking about a subject in general might be simpler but if you start with a clear idea in your mind and you communicate this idea effectively then you are much more likely to make an impact. In speaking workshops I have noticed that there is a marked improvement in the quality of speeches when I provide participants with a list of ideas to choose from, rather than giving them a free choice. Instead of "Mars Exploration" I would suggest something like "Why Exploring Mars Benefits People on Earth". Sometimes you can anticipate requests and prepare topic ideas but even when you have to invent something at the last minute still choose a clearly defined position.
Illustrate Points With Stories. Ask audience members what they remember after any speech and the answer will always be the stories. Illustrate your talk with relevant, true stories -- preferably about personal experiences -- to make your speech memorable. Never make up stories because they have no depth, sound weak and will not fool many audience members who have probably heard the same myth before.Many people begin with a story, though that isn't needed, but tell at least one story that illustrates or supports your main idea. But don't tell too many stories because this can confuse people.