Năm 1805, ông đem quân đoàn Hannover hỗ trợ Hoàng đế đánh bại quân Áo của thống chế Mack von Leiberich ở trận Ulm, sau đó hỗ trợ Hoàng đế giành chiến thắng tại trận Austerlitz (2/12/1805), ông được cử làm Hoàng thân đứng đầu Pontecorvo, một huyện gần Napoli để giám sát Giáo hoàng. Trong chiến dịch chống lại nước Phổ tháng 10/1806, Bernadotte bị Hoàng đế trách phạt nặng nề vì chậm chạp khi dẫn quân ứng cứu cho đạo quân của nhà vua Pháp trong các trận Jena và Auerstadt. Ngày 17/10/1806, Bernadotte dẫn quân Pháp đánh tan quân Phổ tại Halle, truy đuổi và bắt sống tướng chỉ huy quân Phổ là Gebhard Leberecht von Blücher đầu hàng cùng 20.000 hàng binh tại trận Lübeck (5/11/1806); đánh tan quân Thụy Điển trên sông Traves, Haute-Saône và ông đã cho thả 1.000 hàng binh Thụy Điển về nước.  Những người lính Thụy Điển khi về nước đã rất ấn tượng với một câu chuyện về sự công bằng của Bernadotte trong việc duy trì trật tự trong thành phố bị chiếm đóng và đối xử với binh lính nước họ.