What are some smaller towns that have impressed people? I've done a little RAGBRAI over the years, and it always seems that I find a place that surprises me. Here's a couple I'm familiar with (for various reasons) that I think deserve a shout out (not saying any are the best town in Iowa by any stretch).
West Point (Lee County). Went through here on RAGBRAI a few years ago. For as much of a dump as the river towns in SE Iowa were, I was really impressed with some of the "inland" small towns. This town was clean, appeared prosperous, and had a couple of really nice and fun bars/restaurants.
Protivin (Howard County). Not untypical for Northeast Iowa, but Protivin in particular has always struck me with an intense local pride. People come back there, put down roots, and keep it moving. Czech Days is one of those quintessential small town festivals that they really do right.
Kalona (Washington County). Have a lot of family friends from the area. It benefits from it's proximity to Iowa City, but prior to the 380 corridor's explosion, I was always impressed by the cleanliness, prosperous nature of the community, and community pride. Every time I visited, it seemed Rockwellian.
St Ansgar (Mitchell County). Grew up near here, lots of family live here, and I've always had a high opinion of the community. Young people are coming back here, and investing heavily in the community. Plenty of newer homes being built on the edge of the town, and a high quality school district for being Class A/1A.
Walnut (Pottawattamie County). Had some college buddies from the area. Drove through and was very surprised by the well kept, thriving downtown. Seems like being on I-80 and close to Omaha has allowed to develop that antique store niche, but compared to many of the other small towns I've been through in that area, it seems like it was doing really well.