I'd like our users to enter a location (probably city or zip) and a mile radius when they are doing a search.
Any good ui patterns for doing this in a slim way?
I would be careful with filtering results using a continuous parameter, which distance is. The reasoning behind my take on this is because potentially nice search results may be filtered because they in theory could be located 1 distance unit beyond the threshold, which may be set to 10,000 distance units, a minuscule difference in the context.
As far as I'm concerned, an approach that the user could benefit more from is by having the search result ordered by distance by default. This way the user may spot a search result outside her initial scope of distance but that it's intriguing enough to stretch the distance threshold just a little, because the gain is greater.
All be it I don't know the purpose behind the application you're developing, but if it resides to ads/job-opportunities or similar I would really consider using an ordering approach instead of a filtering.
EDIT: There's a Swedish ad-site that handles the Loci selection pretty well. I've made a mockup to depict how you could adapt a similar solution with an interactive map to chose location. Only difference is that here the user is able to disregard distance and search in the entire nation, something that the Swedish ad-site for some reason lacks...


download bmml source – Wireframes created with Balsamiq Mockups
The user may also check that they want to search in states adjacent to the chosen one. This utilizes a direct manipulation concept, a user interactive approach that most users, experienced as well as inexperienced, usually are comfortable with due to clear mapping to the real world.
The cleanest/most minimal UI for this situation might be to do away with the radius input. If users enter a location then obviously they're interested in the locations nearest that. Displaying a list sorted by ascending distance solves that. Laying these locations on a map might be another good alternative to offer as well. (Very similar to what @AndroidHustle proposed)

download bmml source – Wireframes created with Balsamiq Mockups
Frankly, outside the context of aviation, linear radial searches don't actually mean as much as we'd like to think. This is chiefly because real distances aren't measured in straight lines. Is it 12 km from my house to my office? No, it's 3, but the city's topography and urban landscape make it 12 because I have to cross a bridge.
What is the distance filtering meant to achieve? A much more user-friendly option to me would be to provide a clickable map with regions sensibly defined for your context (city, borough, block, country, etc.) Not exactly what I mean, but the BBC language switcher might be inspirational, especially as it combines two data sets: geography and language.
I'm also very much in favour of simply ordering search results by distance.
Have a look at job search websites. They are very keen to solve this as well as they can. Mostly though they are just two boxes and defaulted distance (which can be customised). Remember though that if the search if very local that users perception of 'their area' differs widely. It becomes a rarer issue at a higher level.
How about showing 2 textboxes for city and zip (pre-fill them using GPS/Location APIs if available) and below these show a slider UI control to set radius.