Halkett machte hierbei General Cambronne eigenhändig zum Gefangenen. Nach dem zweiten Pariser Frieden blieb Halkett mit seiner Brigade bei dem Okkupationskorps in Frankreich zurück. 1834 zum Generalmajor ernannt, kommandierte er nacheinander die 2. und 1. Infanteriedivision. Im Schleswig-Holsteinischen Krieg 1848 führte er die Truppen des 10. deutschen Armeekorps und schlug die Dänen 24. April bei Oeversee. Daraufhin wurde er zum General der Infanterie und nach dem Feldzug zum Inspekteur der gesamten Infanterie ernannt. 1862 wurde er in den erblichen Freiherrenstand erhoben.