This is off the top of my head and assuming that the file has an equal number of columns, and you have a list of characters that are possible delimiters.
char[] delims = { '|', ',', ... };
Take a subset of the lines, or the whole file if it is small enough, and store them in a string array.
string[] lines = text.Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
Loop through the delimiters, inserting the count of split entries using that delimiter into an array of ints:
int[] counts = lines.Select(s => s.Split(currentDelimiter).Length).ToArray();
Use your own method to see that all the counts equal each other and are all greater than 1. The delimiter you are on is the one to use.