Escape your slashes (and use a Culture with ParseExact)
DateTime.ParseExact("30/01/2018","dd/MM/yyyy", CultureInfo.InvariantCulture)
.ToString(@"yyyy\/MM\/dd")
Or use the InvariantCulture for the ToString instead of escaping the slash:
...ToString(@"yyyy/MM/dd", CultureInfo.InvariantCulture)
Reason is, that / is a special format character for dates:
Custom Date and Time Format Strings - The "/" custom format specifier
The "/" custom format specifier represents the date separator, which is used to differentiate years, months, and days. The appropriate localized date separator is retrieved from the DateTimeFormatInfo.DateSeparator property of the current or specified culture.
startDate.Text