Начинай сразу с objective-C, с реального приложения. Нет ничего хуже, чем отсутствие заинтересованности, даже если сейчас чешется, удержать это ощущение на долго не получится, а живой проект будет отличным мотиватором.
Язык — это лишь способ реализации определенных задач, если цель твоя iOS — просто глупо начинать с C. Я лично не вижу ни одного «за». А глубокие материи ты и на С все равно так вот сразу не познаешь, все прийдет с опытом.
Из литературы посоветую — Фаулер «Рефакторинг. Улучшение существующего кода.» — поможет сразу писать код более правильно и ускорить процесс «вникания в высшие матери»