Without a major success story under the belt of a small town, there is lack of capital, lack of expertise, lack of attention from the rest of the world, etc. that places with those success stories are able to thrive with. I mentioned my hometown because it would appear that if a small town can break out with a success story, then it starts to attract all the same things that cities do, suggesting to me that it is not so much the people as much as it the history that has resulted in cities booming.
Every town can succeed with the right structures in place. The biggest thing is human capital: having people, and not only that, but keeping them in your town as much as possible. Easier said than done. Your idea of a "success story" driving that human capital is a great example of like-begets-like. The more successes you can point to, the more successes will exist.
The biggest difference between successful towns and successful cities, I think, is the exclusivity. If you're one of five million, you're going to look for smaller groups to align yourself with. You're not connected with New York, you're connected with SoHo. You're connected with the Upper East Side. You're connected with the Village. But in a small town, you tend to identify with basically the entire town. You can feel the pulse, you know the rhythms. It's your "stomping grounds".
There are a ton of other elements we're still working on feeling out. People in towns are more likely to own their own transportation than people in cities, so any activity or business that depends on that factor will thrive more. People in towns seem more likely to stay put longer term. They're more likely to own a home. They're more likely to be connected with nature, and those towns are more likely to be centered around recreational activities like recreational (as opposed to commercial) rivers or lakes. You're less likely to have to pay for parking, which makes getting in and out of town easier.
Sure you may not be able to walk to a Starbucks. You might not have fiber Internet. You can't find a Uber, and good luck with Postmates. Amazon doesn't have same-day delivery and UPS comes later in the day, and you might have to drive a bit to get to the city. But by far the biggest thing I've found about people who live in "boom towns"? They don't care about that, because they never go to the city. They have everything they need right in their own backyard, only cheaper and easier.
But this would belie the title 'Why Cities Boom...' and comments here implying that urban centers are destined to prosper compared to rural areas. The reality is that some cities prosper and some cities are more horrible than nearly any rural area.
"[...] the widening split between dynamic urban areas on the one hand and struggling cities and small towns on the other."