wait.Until(d => driver.FindElementByXPath("//div[contains(text(), 'Blah-Blah')]").Displayed);
wait.Until(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.XPath("//div[contains(text(), 'Blah-Blah')]")));
The first one will send you a ElementNotFoundException when you ask for the Displayed attribute.
With the second one, you never make a direct search of your element, that's why the exception will not be fired and this solution is clearly better if this element must be seen before the wait timer.