How to interpret this "db.explain()" for this mongodb query
Yes, an index is used in both cases, just with different operators.  The key to determining whether a query has used an index or not is the "cursor" : field.  If this says BasicCursor then no index was used (a table scan was performed).  Otherwise an index was used.

In your case you are using a "2d" geo index each time, in fact for $nearsphere and $within, $centersphere to work, you must be using a geo index.

As for the rest of the output, they are both returning 50 objects, the first is significantly faster.  You can see the explanation of the various fields here: 

http://www.mongodb.org/display/DOCS/Explain

You have not listed what indexes you have defined, but if you wanted to attempt to speed things up you can try adding a compound index.  Remember a query in MongoDB can only use one index at a time and for the geo commands to work that must be a 2d/geo index, so if you have indexes on your other fields, they will not be used unless they are part of a compound index with your geo index.  You should also note that the 2d index must currently be the first field in the compound index, per here:

http://www.mongodb.org/display/DOCS/Geospatial+Indexing#GeospatialIndexing-CompoundIndexes