Looking for Interstitial Array Join that works like String Join
Maybe this is the simplest code to insert an element between each consecutive elements of an input array using System.Linq query:

string[] input = { "red", "white", "blue" };
string[] result = input.SelectMany(x =&gt; new [] { "or", x }).Skip(1).ToArray();
// { "red", "or", "white", "or", "blue" }


Steps:


.SelectMany(...): "Projects each element of a sequence to an IEnumerable and flattens the resulting sequences into one sequence." - see Documentation
.Skip(1): We have to remove first "or" delimiter, because we added it before each element and we do not want it before a first element.
.ToArray(): Convert IEnumerable to string[]. If you want, you can call .ToList() method instead to receive List&lt;string&gt;


I do not know about any built-in method or a more straightforward way to achieve it.

See working example on dotnetfiddle.net

I hope it will help you.