Well, first you'd need to find the latitude and longitude of the two addresses. There are several sites on the Internet that will do this geocoding for you with a simple HTTP request, including Google. Then you just use simple spherical trigonometry to find the distance between those two sets of coordinates.
Okay, maybe not simple. But you can find the formula easily enough on the Internet, for example here.
You can use Google Maps API by providing it with Latitude and Longitude parameters of the start point and destination. I think you can also use Zip codes in case of US locations, not sure though...
Dont even think that you can do this using any other means if you intention is to find the actual surface/driving distance. However, if it is just straightline/flight path distance, then you need not use any external APIs, there will be some ready formulae available to do the same using Lat/Long o-ordinates. [ January 27, 2007: Message edited by: Jeevan Philip ]
I Googled around and found Tiger, the US Census geo database. I could use it to determine longitutes and latitudes of US addresses and then convert them to distances. Does anybody use Tiger for this kind of purposes or it would be an overkill?
Both of you mentioned Google web services. Are they free to use from a commercial web application?
subject: Common solutions for finding the distance between two addresses