I think I still have to specify the entire format, I just have to use DateTimeOffset instead of DateTime. Seems to parse it alright.
string date8 = "19430403000000-0400";
DateTimeOffset result2;
bool parsed = DateTimeOffset.TryParseExact(date8, "yyyyMMddhhmmss zzzz", CultureInfo.InvariantCulture,
DateTimeStyles.AllowWhiteSpaces,
out result2);