"Objects" are assets. "Instances" are kind of like live versions of the base "object", clones.. They run all the code in the object's events, and can be created and destroyed.
The code "if (place_meeting(x, y, Object2)) instance_destroy();" will destroy itself it collides with Object2.
I don't know what Object2 is, is it the arrow or the enemy?
I think probably the easiest way to do this would be, in the arrow object, make a collision event with the enemy object, and simply do:
GML:
instance_destroy(other.id, true)
This will destroy any enemy instance that it collides with.
Or you could do it the other way round and put a collision event in the enemy object with the arrow object, then you'd just put:
That'd destroy itself(the enemy) and execute it's destroy event if it has one.