Install Garmin Basecamp.
Connect the device.
Wait for it to appear in the LH pane, under 'Devices'.
Click on either Internal Storage or the Memory Card, depending on where the 'activities' are stored. Internal Storage is the default. Be patient as the device is read over USB.
A list of all the 'activites' appears in a pane called eg 'Internal Storage' below the Devices pane.
Select the 'activity' ( this is a track, signified by a 'footprints' icon )( named after the start time-and-date ).
Optional:
R-click, Show On Map.
Check it's the track you want.
If you don't have a mapset that works in Basecamp ( Mapsource maps are detected and used automatically, and don't need to be re-installed in Basecamp ), then don't bother with this step, just proceed to the export as described below.
File -> Export -> Export Selection.
Here's an example GPX I just created this way from my Edge 800:
http://www.lowe-family.me.uk/gpx/10_11_2012_12_30_55.gpx( r-click, save-as, and if using IE, over-ride it's insistance on calling it .xml ).
See if that works for you.