No, there was a scenario to use two values as keys, so tried Tuple. I thought of trying different syntax of tuple so tried like this Dictionary<(int, int ), int> and it worked. Both methods give the same result. So I just want to know how it differs and When to go for tuple and when to go for (int i, int j).