They're really different tools with different use-cases; I'm not sure it makes sense to directly compare them.
Redis is a fast key-value store with the nice property that values can be things like lists and sets instead of just plain strings.
MongoDB is a full-on document store for JSON-ish documents with support for complex ad hoc javascript queries over those documents, indexing, map-reduce style aggregation, and other fun arbitrarily complex search and collection scenarios that don't map into a simple key-value look up system.
Ah, fair enough. That's pretty cool. I find that if I want to store something complex like a dict/hash in redis, I simply encode it in JSON and store it as a string.
Redis is a fast key-value store with the nice property that values can be things like lists and sets instead of just plain strings.
MongoDB is a full-on document store for JSON-ish documents with support for complex ad hoc javascript queries over those documents, indexing, map-reduce style aggregation, and other fun arbitrarily complex search and collection scenarios that don't map into a simple key-value look up system.