The idea behind it is simple - you upload your Garmin spin data (or a .gps file creating using an Android/iPhone App) and it does the usual stuff (displays route on google maps and usual data on distance metres climbed etc). But what makes it interesting is that you can create segments, which are basically sections of the route which you or other users have designated. So Strava will give you a time (and power data based on physics calculations) for that segment.
The fun bit is when someone else cycles along that segment on their spin and they upload the GPS data, Strava sees this and then figures out who was fastest on that section. This adds a bit more interest to the spins as you can target a route and look to post the fastest time up it.
This is an example of a segment that myself and Sean are duking it out on.. http://app.strava.com/segments/655133