A lot of this probably seems obvious but just putting it down for what it is worth.
The key here is to ask open questions that require non-signal worded answers. Do not phrase all your questions where a yes/no is an acceptable answer. You want to approach them and learn their needs which means the most important skill you will take with you is listening to understand not to respond.
Get them to discuss their needs, wants and ideals for the project -- what are the absolutes in the project as well. Learn why the project was started/contemplated, e.g. what problem is it really solving. Ask who from the company is aware of the project and what the visibility is like (mostly relevant in larger organizations as in small companies everyone usually knows). Understand the why of what they are needing, not just the what, and that will help you know what pitfalls might also exist in the requirements later.
Be up front and explain your focus of this initial meeting is to make sure you have the best understanding you can so as to provide them with an accurate proposal, and so understanding why the project came about will help you understand requirements better. I also always believe in the first 5 minutes of a meeting like this you should state what you are hoping to achieve with the meeting and ask them what they want to achieve or what they want to make sure you walk away knowing.
Find out if there are any third parties you need to work with for this project, anyone outside their organization, any restrictions or limitations etc. Any integrations, third party software etc, all that is important as you I am sure already know.
Lastly, if you haven't already, make sure you understand their budget for the project. Is this already funded to a certain level etc. This helps you know that if they are asking for $100k worth of work but only budgeted $30k they are either not in touch with reality of the project or you misunderstood something and need to get more clarification.