What do use in a multi-threaded environment?Dictionary with lock OR ConcurrentDictionary?

Doesn't Dictionary with lock make ConcurrentDictionary redundant?
As far as I understand to make dictionary thread safety we can just use lock to make sure other threads don't have access to the dictionary, why use ConcurrentDictionary ?
Was this page helpful?