It is very good that you are coming from a C and assembly background. Its always important to understand what any compilers or interpreted language do behind the scenes. My experience was Pascal => assembly => Basic => ObjectPascal => C => C++ => Java => Objective C => Python => Ruby => Perl; a lot of them overlapping.
The first thing I would suggest is to get up to speed on object-oriented programming concepts.
I would say that you should be familiar C++, Objective-C, Objective-C++ (can come in very hand when using c++ and Objective-C in the same project).
Swift seems to be the future for iOS and OS X and looks to be a very interesting language with some really great Xcode tools behind it. Think Playgrounds.
Its always good to know JVM based languages Java, Scala, etc... Obviously if you are going to do any Android you will have to know Java.
My prediction: Swift will be the most important language for iOS, OS X five years from now. It is usable today. Keep in mind that Swift is a language that is quickly evolving based on developer input, so there is going to be some overhead in keeping up with the changes.
Xcode is free, but it is worth the 99.00 dev program just to watch the last few years WWDC videos. Its pretty wild what you can do with Xcode these days.
Good luck with your iOS adventure. It can be a lot of fun!