To prevent pxe boot loops, you should be sure to include the line $SNIPPET('kickstart_done') in your %post section. Also set pxe_just_once in your settings to 1 (you can edit the file manually and restart cobblerd, or if you're running 2.4.0 you can execute the command "cobbler setting edit --name=pxe_just_once --value=1" - no restart of cobblerd is required when using the command).
After that, once a kickstart completes the netboot-enabled flag for the system will be disabled and it will receive a PXE menu that only has a "local boot" option.