I would use the property. It will give you more flexibility if you find out that you have to change the property behavior later - you won't be able to do that using field.
btw. Why don't you use automatic property?
public int Counter { get; private set; }
You don't have to initialize field with 0
. It's default value for int
, so it will be done anyway.