Maybe a comparison between a "c-like" language and obj-c would be useful -- let's go with Java. Imagine a Rectangle class with a setBackgroundColor method. We'll assume we have an instance of Rectangle called rect.
In Java, the method signature would likely be
public void setBackgroundColor(int r, int g, int b) { ... }
In Objective-C, arguments are part of the method signature, so it might be
- (void)setBackgroundColorWithRed:(int)r green:(int)g blue:(int)b;
The "-" means it's an instance method on the Rectangle class. (void) is the method's return type. Then come the arguments. Each colon defines an argument, which is typed (each arg is (int) in this example).
Let's compare calling these methods. Java:
rect.setBackgroundColor(255, 255, 0);
Obj-c:
[rect setBackgroundColorWithRed:255 green:255 blue:0];
A lot of people stumble on obj-c's syntax -- you're not alone. Hopefully this comparison will make things clearer. It also exemplifies a linguistic strength of objective-c: at call time, it's clear what your arguments are. If I were reading code and saw the Java method being called, it wouldn't be obvious that the arguments are red, blue, and green. In obj-c, it's painfully clear that we're setting individual color values. Granted, most developers can guess what the three arguments to a setColor method are, but more complex methods get confusing. Here is a more complex method defined in Java and objective-c:
static Dog createDog( String name
, int age
, boolean isNeutered
, String ownerName
);
+ (Dog *)createDogNamed:(NSString *)name
age: (int) age
neutered:(BOOL) isNeutered
owner: (NSString *) owner;
At call time:
Dog.createDog("Fluffy", 2, true, "Moshe");
[Dog createDogNamed:@"Fluffy" age:2 neutered:YES owner:@"Moshe"];
Objective-c is more verbose, but much more readable. In the Java example, it's not really clear what the "2" and "true" arguments mean. Objective-c almost reads like English.
Other people have posted links to more in-depth guides, but I hope this gets you past the syntactic stumbling blocks enough to make the links useful. I'm happy to answer more specific questions you have. In my experience, obj-c newbies have a really tough time with syntax, and then it *click*s and feels brilliant. Hang in there!