id - это объект objective-c
void - это пустота/ничто в С
void* - это указатель на переменную неизвестного типа в С
UPD.
Если быть совсем точнее, то id это указатель на структуру объекта в objective-c
Если очень интересно, то можно посмотреть подробнее в usr/include/objc/objc.h
/// Represents an instance of a class.
struct objc_object {
Class isa OBJC_ISA_AVAILABILITY;
};
/// A pointer to an instance of a class.
typedef struct objc_object *id;