I have moderated dozens of panels over the years, and in that time have accumulated a few helpful tips that have always served me well, so I thought I'd pass them along here to you in this space. It's a short list--which is appropriate, because when you moderate a discussion you don't (and shouldn't) have a lot of mental bandwidth to spare to be all "meta" about your panel!
Always have the panelists introduce themselves, not give you bios to read. You will, of course, have read their bios on your own time, but most of these bios are too long, awkwardly worded and would never be read aloud by the actual panelist in question! In fact, when one of these is read on a panel, I wish I had a dollar for every time the panelist jumped in with some jokey comment, like "if only half of that were true!" They say these things because these bios are not how people talk. The audience can read bios in the program if they wish, but I find that when you ask panelists to introduce themselves the bios they give themselves are human-sounding and mercifully short, leaving your audience more time for questions.
I prepare two questions for each specific panelist, and I generally knock these out before I get to any cross-panel questions. They are useful to help "warm up" the panelist by starting them off in a safe place. Most panels have one or two personalities that, left to their own devices, would dominate the panel, which doesn't do your audience any favors. I always do "warm up" questions when I moderate focus groups, and panels aren't any different in this regard. Never forget your role--you are the advocate for the audience. I never prepare questions designed to make me look smart. I prepare the questions I suspect the audience wants to hear answered. They'll thank you for it, and (as a side benefit) you'll look smart anyway.
I come up with dozens of questions for the panel ahead of time. To be honest, a lot of the questions you get from the audience are likely to be either self-serving, or at best a little too highly calibrated to the individual situation of the questioner. I try to anticipate as many of these "use cases" for likely audience members as I can by imagining the types of people (even specific individuals as models) who are likely to attend, and preemptively asking some of the questions they are likely to raise myself. This way I can not only satisfy the expectations of my audience, but I can also keep the panel moving along by (hopefully) phrasing some of these questions economically and in such a way as to prompt specific and useful responses from the panel. I literally write 30-50 questions down in advance, knowing that I may only get to 5 of them, but when I do they will be phrased exactly how I want them, and the panel will be kept on track.
I'm careful about my language when the panel starts to become more interactive. Let's face it, a panel is designed to interact, not devolve into a series of short monologues. The moderator's language helps a lot in this regard. For instance, when one panelist finishes a comment about an interesting subject, it's a cop-out to turn to another panelist and ask "what do you think about that?" That's an open-ended question, and allows the panelist to fill in the blank with pretty much anything they want, from a sales pitch to something else unrelated on whatever "talking points" list they came with. Instead, ask specific, pointed questions prompting a panelist to respond to something specific the previous panelist said. The more specific you are with your questions, the less likely the panel is to go off the rails and veer into topics that the audience didn't come for.
Finally, it's all about the audience, and in that regard you must never, ever forget that they are the folks who (one way or another) paid to be there. If a panelist veers off-topic, or starts into a sales pitch, I am merciless. Absolutely merciless. Never be afraid to cut off windbags and quickly ask another panelist to take a different tack. Your audience will love you for it, and it is the single biggest source of positive reviews/comments I get on panels I moderate. You are not there to make friends with the panel. You may already be friends with the panel. I am not antagonistic, but I make it very clear to conversation dominators that off-topic excursions will be halted pretty quickly. Generally, the folks who are likely to do this are pretty self-aware and will quickly recognize that they are dominating and will back off, and the other panelists will also appreciate the gesture and do a better job of "moderating" themselves. Early in my career I would just let these people finish, until I realized that many of them had enormous breath control :). A firm, but polite interruption is just the ticket.
That's about it--always remember that you are there to represent the audience, not to be a co-conspirator to the panelists. I run these pretty much the same way I would a focus group--draw people out, don't let any one voice dominate, and aim for a deep exploration of a few topics, not a survey course. You don't have to be antagonistic by any means, but if you are single-minded in your determination to provide value for the audience, your choices along the way will become quite clear.