Я бы добавил их до -f
-i, --ignore-errors Продолжить при ошибках загрузки, например, чтобы пропустить недоступные видео в списке воспроизведения
-c, --continue Принудительное возобновление частично загруженных файлов. По умолчанию youtube-dl возобновит загрузку, если это возможно.
Просто, потому что Вы устанавливаете соединение с командой. Соединение не означает, что установлено.
command.Connection = connection;
command.Connection.GetHashCode() == connection.GetHashCode(); // may return false.
Это - причина проблемы. Может быть исправлен при помощи соединения. CreateCommand ();