Knowing C, Java, Scheme, Perl, and Objective C, I'd have to say that Objective C really is among my favorite languages, precisely because of its hybrid nature. Things I like:
* You can do strong typing, but you don't have to.
* You can extend the functionality of classes (with extra methods) without needing the original source of the methods (using Categories).
* Messaging nil has no ill side effects as long as you don't rely on the return value of your method.
The only major complaints I've ever heard are the lack of class variables (which you can work around by using static globals in your class implementation file), and the lack of private methods (which you can work around by not advertising your methods in your header file). A few people bitch about no automatic garbage-collecting, but I see this is a feature, not a bug.
Other than that, I think it's syntactically nice, promotes readable code by using infix notation for method calls, and is a true superset of C (unlike C++). Also, the small number of syntactic element s that are added makes it an even bigger plus, since it really only takes an afternoon to learn!