If you are after a straight word count, then the simplest method is to use a regex:
string s = File.ReadAllText(@"D:\Temp\MyText.Txt");
Regex wordCount = new Regex("\\w+");
int count = wordCount.Matches(s).Count;
It's not necessarily that efficient, but it should be reasonably accurate.
If you need to evaluate the number of unique words (i.e. count each word once) then you have to do more:
string s = File.ReadAllText(@"D:\Temp\MyText.Txt").ToLower();
string[] words = s.Split(" .,();:?!\r\n".ToArray(), StringSplitOptions.RemoveEmptyEntries);
var dwords = words.Distinct();
int dcount = dwords.Count();