---
title: "How to remove duplicate values from an array in C#?"  
description: "How to remove duplicate values from an array in C#?"  
author: "Ravi Vishwakarma"  
published: 2024-06-11  
updated: 2024-06-11  
canonical: https://www.mindstick.com/interview/33903/how-to-remove-duplicate-values-from-an-array-in-c-sharp  
category: "c#"  
tags: ["c#", ".net"]  
reading_time: 5 minutes  

---

# How to remove duplicate values from an array in C#?

You can implement custom logic to remove duplicates. \
Here's an example:

```cs
using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Original array
            int[] array = { 1, 2, 3, 1, 2, 3, 1, 4, 74, 8, 5, 74, 85, 8, 2, 4, 5, 4, 2, 11, 25, 4455, 6, 9, 966, 65, 78, 8, 8, 95, 574, 12 };
            Console.WriteLine("Original Array Length : " + array.Length);

            // Get distinct array
            var DistinctArray = Program.DistinctArray(array);
            Console.WriteLine("Distinct Array Length : " + DistinctArray.Length);
            foreach (var item in DistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", DistinctArray));

            Console.ReadLine();
        }

        // Method to return distinct elements from an array
        public static int[] DistinctArray(int[] array)
        {
            IList<int> list = new List<int>();
            foreach (var item in array)
            {
                // Add item to list if it's not already present
                if (!list.Contains(item))
                {
                    list.Add(item);
                }
            }

            return list.ToArray();

            /*
             * You can also put code to remove duplicate items from array
             * using LINQ:
             * return array.Distinct().ToArray();
             */
        }
    }
}
```

## Output -

![How to remove duplicate values from an array in C#?](https://www.mindstick.com/interviewquestion/f9148890-2aee-413a-833d-dbac6b8da65c/images/e2b8d6de-605c-46ce-a00c-9c90bd2335a3.png)

## Let this ‘DistinctArray’ method convert into the generic method

```cs
using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Original array
            Console.WriteLine("For Interger");
            int[] array = { 1, 2, 3, 1, 2, 3, 1, 4, 74, 8, 5, 74, 85, 8, 2, 4, 5, 4, 2, 11, 25, 4455, 6, 9, 966, 65, 78, 8, 8, 95, 574, 12 };
            Console.WriteLine("Original Array Length : " + array.Length);

            // Get distinct array
            var DistinctArray = Program.DistinctArray<int>(array);
            Console.WriteLine("Distinct Array Length : " + DistinctArray.Length);
            foreach (var item in DistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", DistinctArray));
            Console.WriteLine("----------------------------------------------------");

            //For string
            Console.WriteLine("For String");
            // Original array
            string[] StringArray = { "a", "A", "a", "b", "B", "ram", "raM" , "ram"};
            Console.WriteLine("Original Array Length : " + StringArray.Length);

            // Get distinct array
            var StringDistinctArray = Program.DistinctArray<string>(StringArray);
            Console.WriteLine("Distinct Array Length : " + StringDistinctArray.Length);
            foreach (var item in StringDistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", StringDistinctArray));

            Console.ReadLine();
        }

        // Generic Method to return distinct elements from an any array
        public static T[] DistinctArray<T>(T[] array)
        {
            IList<T> list = new List<T>();
            foreach (var item in array)
            {
                // Add item to list if it's not already present
                if (!list.Contains<T>(item))
                {
                    list.Add(item);
                }
            }

            return list.ToArray<T>();
        }
    }
}
```

## Output -

![How to remove duplicate values from an array in C#?](https://www.mindstick.com/interviewquestion/f9148890-2aee-413a-833d-dbac6b8da65c/images/6036afb5-7d27-4730-9c30-4bb1b5578cc4.png)

Read Also -

[**How to get a comma separated string from an array in C#?**](https://www.mindstick.com/interview/33902/how-to-get-a-comma-separated-string-from-an-array-in-c-sharp)

[**What is the difference between 'String' and 'string' in C#?**](https://www.mindstick.com/interview/33901/what-is-the-difference-between-string-and-string-in-c-sharp)

[**Foreach Loop in C#**](https://www.mindstick.com/interview/33898/foreach-loop-in-c-sharp)

## Answers

### Answer by Ravi Vishwakarma

You can implement custom logic to remove duplicates. \
Here's an example:

```cs
using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Original array
            int[] array = { 1, 2, 3, 1, 2, 3, 1, 4, 74, 8, 5, 74, 85, 8, 2, 4, 5, 4, 2, 11, 25, 4455, 6, 9, 966, 65, 78, 8, 8, 95, 574, 12 };
            Console.WriteLine("Original Array Length : " + array.Length);

            // Get distinct array
            var DistinctArray = Program.DistinctArray(array);
            Console.WriteLine("Distinct Array Length : " + DistinctArray.Length);
            foreach (var item in DistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", DistinctArray));

            Console.ReadLine();
        }

        // Method to return distinct elements from an array
        public static int[] DistinctArray(int[] array)
        {
            IList<int> list = new List<int>();
            foreach (var item in array)
            {
                // Add item to list if it's not already present
                if (!list.Contains(item))
                {
                    list.Add(item);
                }
            }

            return list.ToArray();

            /*
             * You can also put code to remove duplicate items from array
             * using LINQ:
             * return array.Distinct().ToArray();
             */
        }
    }
}
```

## Output -

![How to remove duplicate values from an array in C#?](https://www.mindstick.com/interviewquestion/f9148890-2aee-413a-833d-dbac6b8da65c/images/e2b8d6de-605c-46ce-a00c-9c90bd2335a3.png)

## Let this ‘DistinctArray’ method convert into the generic method

```cs
using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Original array
            Console.WriteLine("For Interger");
            int[] array = { 1, 2, 3, 1, 2, 3, 1, 4, 74, 8, 5, 74, 85, 8, 2, 4, 5, 4, 2, 11, 25, 4455, 6, 9, 966, 65, 78, 8, 8, 95, 574, 12 };
            Console.WriteLine("Original Array Length : " + array.Length);

            // Get distinct array
            var DistinctArray = Program.DistinctArray<int>(array);
            Console.WriteLine("Distinct Array Length : " + DistinctArray.Length);
            foreach (var item in DistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", DistinctArray));
            Console.WriteLine("----------------------------------------------------");

            //For string
            Console.WriteLine("For String");
            // Original array
            string[] StringArray = { "a", "A", "a", "b", "B", "ram", "raM" , "ram"};
            Console.WriteLine("Original Array Length : " + StringArray.Length);

            // Get distinct array
            var StringDistinctArray = Program.DistinctArray<string>(StringArray);
            Console.WriteLine("Distinct Array Length : " + StringDistinctArray.Length);
            foreach (var item in StringDistinctArray)
            {
                Console.Write(item + ", ");
            }
            Console.WriteLine();
            //Print array as a string with comma seperate
            Console.WriteLine(string.Join(", ", StringDistinctArray));

            Console.ReadLine();
        }

        // Generic Method to return distinct elements from an any array
        public static T[] DistinctArray<T>(T[] array)
        {
            IList<T> list = new List<T>();
            foreach (var item in array)
            {
                // Add item to list if it's not already present
                if (!list.Contains<T>(item))
                {
                    list.Add(item);
                }
            }

            return list.ToArray<T>();
        }
    }
}
```

## Output -

![How to remove duplicate values from an array in C#?](https://www.mindstick.com/interviewquestion/f9148890-2aee-413a-833d-dbac6b8da65c/images/6036afb5-7d27-4730-9c30-4bb1b5578cc4.png)

Read Also -

[**How to get a comma separated string from an array in C#?**](https://www.mindstick.com/interview/33902/how-to-get-a-comma-separated-string-from-an-array-in-c-sharp)

[**What is the difference between 'String' and 'string' in C#?**](https://www.mindstick.com/interview/33901/what-is-the-difference-between-string-and-string-in-c-sharp)

[**Foreach Loop in C#**](https://www.mindstick.com/interview/33898/foreach-loop-in-c-sharp)


---

Original Source: https://www.mindstick.com/interview/33903/how-to-remove-duplicate-values-from-an-array-in-c-sharp

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
