Zitat
Mit dem "nur befehlen wenn ich es durchsetzen kann"..heißt das, dass ich am besten nix sage, wenn er zu weit weg ist..geht doch auch nicht ^^..hinterher denkt er, er darf es..weil ich ja nix gesagt hab..also das wäre für mich eine logische schlussfolgerung 
Wie *Sascha* ja schon ganz richtig anmerkt: die logische Schlussfolgerung für deinen Hund ist dann, dass du zwar rufst, er aber trotzdem rennen darf, da du es ja nicht verhinderst.
Je öfter er zu einem anderen Hund rennt, während du hinterher rufst, desto eher verknüpft er dein Rufen mit der Handlung 'zum anderen Hund laufen'. So lernt ein Hund Kommandos.
Wenn du nicht möchtest, dass Barney zu anderen Hunden rennt, dann bring ihm doch zuerst bei, bei Fuß zu gehen oder Sitz zu machen.
Und zwar wirklich gehorsam. Also so, dass er das Kommando nicht von selbst auflöst und los rennt, wann es ihm passt, sondern erst los läuft, wenn du ihn frei gibst.
Dazu kannst du ihn an die Leine oder Schleppleine nehmen. Und dasgewählte Kommando sollte ab da IMMER so konsequent befolgt werden. Also nicht nur dann, wenn ein anderer Hund in Sicht ist.
Er lernt dann, dass er erst bei Fuß bleiben muss, oder Sitz macht, oder was du aussuchst, und du die Leine erst löst, wenn er das macht.
Dazu kannst du ein Kommando "Geh Hallo sagen" oder sowas einführen, damit Barney weiß, dass er jetzt hin laufen darf.
Wenn du das (sorry, aber anders gehts nicht :/
) ganz viel übst und übst und übst...
wird Barney ohne Leine irgend wann auf den Befehl "Sitz" sitzen und erst auf den Befehl "geh Hallo sagen" zu dem anderen Hund laufen.
Alles schreien, brummeln oder schimpfen nützt nichts, wenn ein Hund nicht gelernt hat, was er machen soll und wenn er nicht gelernt hat, seine Impulse zu kontrollieren, bzw. Kommandos automatisch auszuführen.
(Eigentlich will er ja zu den Hund rennen, aber sein Gehirn hört das Wort "Sitz" und er setzt sich. Punkt.) Sowas erreichst du halt nur übers Üben.
Viel Erfolg
Christine