As with many things GIS, there are a couple tricks you need to know if you want to generate an elevation profile. In my case, I'm using ArcGIS and its 3D Analyst extension to generate elevation profiles using SRTM DEM data (see http://srtm.csi.cgiar.org/SELECTION/inputCoord.asp for data download - I chose to get the data in "ArcINFO ASCII" format).
Getting the DEM into ArcGIS is a no-brainer. Just download the data, unzip it, and use ArcCatalog to add it to map.
To use 3D Analyst to generate the profile, you have to enable the 3D Analyst Extension, and then add the 3D Analyst toolbar (right click in an empty area of your toolbar and click 3D Analyst). Then you can draw a 3D polyline (click the button) along the path for which you want the profile. Then, click the profile graph button () to generate the profile. The data is saved where you've configured it under the 3D Analyst -> options menu ().
But I found an unpleasant surprise - my resulting dbf's (you can open them with excel) were reporting a stretched value - not the actual elevation value from the SRTM data. So, here's the trick: you have to set the "Source Type" of your SRTM data to "Elevation". To do that, right-click on your elevation raster in ArcCatalog, find the "Source Type" row, and switch it to "Elevation". Now, re-add that DEM to your map, draw your 3D line again, generate your profile again, and voila - the dbf should now be reporting actual elevation and not a stretched value.
I didn't find this information anywhere else, so I'm hoping this might help some folks in the same situation I found myself in.