Memcached là cache thuần: đúng một kiểu dữ liệu (string), đa luồng, vận hành đơn giản.
Redis có cả một bộ kiểu dữ liệu (String, Hash, List, Set, Sorted Set, Stream, HyperLogLog, Geospatial) kèm persistence, pub/sub, transaction, Lua scripting và clustering native.
Chọn Memcached khi: chỉ cần cache key-value đơn giản, muốn tận dụng đa luồng cho workload CPU-bound (hiếm gặp trong thực tế), hoặc team đã quen sẵn.
Chọn Redis khi: cần cấu trúc dữ liệu phong phú, persistence, pub/sub, session store, rate limiting, leaderboard, distributed lock — tức là gần như mọi trường hợp.
Thực tế Redis đã thay Memcached ở phần lớn project mới; Memcached giờ chủ yếu còn trong hệ thống cũ.