I recently ran a session where the adventurers needed to ask around the town to uncover rumors and to figure out where they needed to go next. This method of dealing with lots of NPCs works well for me, especially when there is an investigative element to the story.
Define a set of interesting NPCs. It's important to have a few memorable or interesting NPCs in your town. For me, these NPCs have a specific location where they can be found, and they often have a backstory that might lead into some plot hook. For instance, a woman standing in the streets crying; the tavern maiden with all the local gossip; or an aide to the mayor who is not happy with the way the town is being run.
Define a grab bag of uninteresting NPC characteristics. Most of the NPCs in the town are not very interesting. For these NPCs, I do not create full characters. I usually find that a pre-prepared list of several names, character descriptions, dispositions, and basic backstories is sufficient. You say that your party tends to get a bit silly, so it could also be useful to also define a set of ridiculous quirks or mannerisms to really give your NPCs some character. When the players approach an NPC, choose a set of these characteristics at random.
Define a set of facts that are useful to the adventurers. These facts will help move the adventurers to their next goal. Order them by importance to the adventurers.
Define a set of lies or false rumors that are not helpful to the adventurers. These rumors might lead the adventurers astray or not bring them any closer to their goals.
Let the party interact with the NPC's. In my case, the adventurers were explicitly told by an NPC that they should ask around to find details related to their quest.
When the party approaches an 'uninteresting' NPC, choose some of your pre-defined characteristics at random: name, description, disposition, and/or backstory. I find it easier if the uninteresting NPC's will not hold much of a conversation unless directly prompted by the adventurers to answer a question. If the adventurers don't have any questions, the NPC gets bored a goes back to what they were doing.
If the players approach one of the 'interesting' NPCs, the NPC would divulge their backstory and maybe a plot hook first, and then may divulge additional information from the facts/rumors/lies tables if pressed further.
Reveal information to the party. As the adventurers talk to the NPC, make a judgement on their relative success at interacting with that NPC. If the adventurers generally got along with the NPC, have the NPC divulge one of the useful facts or rumors, starting with the most important ones. If the party was generally unsuccessful, the NPC will only tell them a rumor which is not useful to them.
This system worked really well for me. It requires some skill by the adventurers to approach the social interactions appropriately, but it also gives you a lot of freedom as the DM to divulge important information easily. For example, in my campaign, as the adventurers were successful in their NPC encounters, they would first learn the location of the place they needed to go. They could then choose to embark immediately, or if they kept talking to NPC's, they would learn about a secret entrance that would save them a lot of trouble later on.
For me, this approach is really manageable when there are a large number of NPCs. The information provided by the NPCs is all coming from one block of facts, so the only part you need to worry about doing on the fly is picking from your grab bag of NPC names, descriptions, dispositions, and backstories.