I think you're looking for:
IEnumerable<string> strings =
ContentArray.Where((str, index) => SelectionArray[index]);
Which for your example will yield an IEnumerable<string> containing "Name".
However, if your SelectionArray is shorter than your ContentArray, you will get an index out of bounds exception.
If that's possible, you could simply add a length check, assuming you want an index greater than the length of SelectionArray to return false:
IEnumerable<string> strings =
ContentArray.Where(
(str, index) => index < SelectionArray.Length && SelectionArray[index]);