Your Assert does the condition checking and will log an error if incorrect, so you don't want it in an if statement.
Assert.IsTrue(driver.FindElement(By.Id("selenium_link")).Displayed, "The element is not displayed");
Console.WriteLine("Since the assert didn't terminate the test the element bust be displayed");
However, remember that the Displayed boolean only works for an element that is present on the page and not hidden to the user. If the element isn't found, the assert will never trigger as webdriver will throw an ElementNotFound exception.
So, if you want to check that an element is PRESENT. you need to use findElements and verify the count.
Assert.IsTrue(driver.FindElements(By.Id("Selenium_ID")).Count > 0) //element is present (but may be hidden).
To Verify an element is both present and visible, a little more logic is needed to avoid duplicate finds.
var elements = driver.FindElements(By.Id("selenium_id"));
Assert.IsTrue(elements.count > 0 && elements[0].Displayed);