Trận phản công Soltsy là hoạt động quân sự lớn đầu tiên của Phương diện quân Bắc (sau này là Phương diện quân Leningrad) trên khu vực phía Tây hồ Ilmen. Đây cũng là trận đánh mở màn cho một loạt các trận đánh ác liệt của Chiến dịch phòng ngự chiến lược Leningrad. Diễn ra từ ngày 14 đến ngày 18 tháng 7 năm 1941, lần đầu tiên, quân đội Liên Xô chiếm lại được một thị trấn quan trọng từ tay quân Đức và đẩy quân Đức lùi lại hơn 40 km. Tuy không giữ được thị trấn này quá ba ngày nhưng đòn phản công của ba tập đoàn quân Liên Xô đã chặn được đà tấn công của quân đội Đức Quốc xã, tạo điều kiện để quân đội Liên Xô củng cố tuyến phòng thủ Luga và trụ lại tại đây gần một tháng - một trong những thành công đầu tiên trong việc chống các cuộc tấn công của quân đội Đức, khiến cho họ bị quân đội Xô Viết đánh bật khỏi thị trấn Soltsy. Trận phản công này đã làm tiêu hao một phần lực lượng thiết giáp của Quân đoàn xe tăng 56 (Đức). Nó cũng giành thêm thời gian cho quân đội Liên Xô tại khu vực Leningrad củng cố vững chắc hơn các tuyến phòng thủ quanh thành phố và trên hướng Novgorod. Sau khi chiếm Pskov, Tập đoàn quân xe tăng 4 (Đức) của tướng Erich Hoepner tiếp tục triển khai kế hoạch tấn công trên hướng Leningrad. Quân đoàn xe tăng 41 tấn công vào các cụm cứ điểm Luga, Kingisepp do hai cụm phòng thủ của Phương diện quân Leningrad đóng giữ trên con đường ngắn nhất đến Leningrad. Quân đoàn cơ giới 56 tấn công trên hướng Novgorod và Staraya Russa. Cả hai cánh quân xe tăng Đức mặc dù còn tương đối đầy đủ biên chế nhưng cũng đã khá mệt mỏi sau khi liên tục tấn công vượt qua gần 600 km kể từ biên giới Liên Xô đến tuyến Pskov - Ostrov - Opochka. Quân đội Liên Xô sau khi để mất Pskov đã bị quân Đức tiếp tục đột phá sâu và đẩy lùi về tuyến sông Cherekha và bị mất cả đầu cầu Slavkovichi. Các đơn vị tăng viện cho mặt trận gồm các tập đoàn quân 34 và 48 đã phải dừng lại lập phòng tuyến trên các con sông này khi các sư đoàn xe tăng Đức vượt qua Chernevo (?? ? ), Strugi (Strugi Krasnye), Porkhov, Dno và Chikharevo (??? ). Quân đội Liên Xô phải từ bỏ việc thiết lập các trận địa phòng thủ trên tuyến này vì địa bàn rộng lớn từ tuyến sông Cherekha đến các tuyến sông Luga và Lovat hầu như trống trải. Quân số các sư đoàn bộ binh Liên Xô còn tồn tại sau khi rút từ mặt trận biên giới về hao hụt nghiêm trọng. Sư đoàn đông nhất cùng chỉ có gần 8.000 quân. Phần lớn các sư đoàn chỉ còn lại không quá 50% quân số theo biên chế thời chiến. Sau ba tuần chiến đấu liên tục, các tập đoàn quân 11 và 27 hầu như chỉ đủ sức phòng ngự tại chỗ do thiếu hụt nghiêm trọng các phương tiện cơ giới. Lực lượng chủ công của quân đội Liên Xô tham gia trận phản công tại Soltsy là Tập đoàn quân 11 do thiếu tướng V. I. Morozov chỉ huy. Trong đội hình có: Trong quá trình diễn ra chiến dịch, Tập đoàn quân 11 được tăng viện "Sư đoàn xe tăng 21" rút từ Quân đoàn cơ giới 10 và các sư đoàn bộ binh 70, 237. Ngày 9 tháng 7, STAVKA ra mệnh lệnh số 00260 yêu cầu Phương diện quân Bắc tập trung binh lực giáng một đòn phản công vào bên sườn Quân đoàn cơ giới 56 (Đức) đang tấn công dọc sông Shelon lên Shimsk. Nếu quân Đức chiếm được Shimsk, mặt trận Liên Xô trên hướng này sẽ bị chia cắt bởi hồ Ilmen và các khu vực phòng thủ tại Staraya Russa cũng như Novgorod sẽ bị uy hiếp. Chấp hành lệnh này, trung tướng P. P. Sobennikov, chỉ huy cụm quân Tây Bắc giao nhiệm vụ này cho Tập đoàn quân 11, đơn vị đang đóng đối diện với Quân đoàn cơ giới 56 (Đức) làm chủ công mở chiến dịch phản công. Ngày 10 tháng 7, STAVKA thành lập 3 bộ tổng tư lệnh trên các hướng Tây Bắc, Bắc và Tây Nam. Nguyên soái K. E. Voroshilov được chỉ định là Tổng tư lệnh hướng Tây Bắc. Ngày 10 tháng 7, K. E. Voroshilov đến mặt trận và thị sát Tập đoàn quân 11 và bổ khuyết những thiếu sót trong kế hoạch của tướng P. P. Sobennikov. Hai cụm pháo binh chiến dịch được thành lập. Trên hướng sông Mtaga là Cụm trung đoàn pháo binh hỗn hợp 68 gồm 1 Tiểu đoàn 1 lựu pháo của Trung đoàn 221, tiểu đoàn 3 pháo nòng dài của Trung đoàn 227 và 1 tiểu đoàn súng cối hạng nặng. Trên hướng sông Shelon là Cụm trung đoàn pháo binh hỗn hợp 252 gồm Tiểu đoàn 2 lựu pháo của Trung đoàn 221, Tiểu đoàn 1 pháo nòng dài của Trung đoàn 227 và Trung đoàn pháo chống tăng. Ngày phản công được ấn định vào 14 tháng 7. Sau khi đoạt được phòng tuyến Pskov - Ostrov - Opochka, Cụm tập đoàn quân "Bắc" (Đức) đã điều đến khu vực này bộ phận chủ lực của nó để mở trận công kích quyết định trên hướng Leningrad: Mục tiêu của quân Đức là nhanh chóng tiếp cận tuyến sông Luga khi quân đội Liên Xô chưa kịp củng cố hệ thống phòng ngự. Quân Đức vẫn sử dụng chiến thuật tấn công như hồi đầu chiến tranh, dùng các sư đoàn xe tăng và cơ giới tạo thành các mũi khoan thép vượt lên trước để phá vỡ các vị trí phòng thủ trung gian của quân đội Liên Xô. Theo sau là các sư đoàn bộ binh tiếp tục giải quyết chiến trường khi bộ binh Liên Xô đã bị chia cắt thành các ổ phòng ngự. Cũng vẫn như ba tuần đầu của cuộc chiến, không quân Đức Quốc xã vẫn chiếm ưu thế trên không phận vùng Baltic và Leningrad. Ngày 10 tháng 7, Tập đoàn quân xe tăng 4 của tướng Erich Hoepner tiếp tục cuộc tấn công trên hướng Leningrad. Ngày 11 tháng 7, Quân đoàn xe tăng 41 của tướng Georg-Hans Reinhardt bị chặn lại gần Luga bởi một hệ thống phòng thủ có chiều sâu của quân đội Liên Xô. Thất bại trong việc tìm con đường ngắn nhất đến Leningrad, tướng Georg-Hans Reinhardt phải đổi hướng tấn công. Thay vì nhằm vào Luga, Quân đoàn xe tăng 41 (Đức) dịch chuyển lên phía Bắc, chiếm Osmino và dùng nó làm bàn đạp tấn công vào Bolshoy Sabsk và Porechye. Ở phía Nam, Quân đoàn cơ giới 56 của tướng Erich von Manstein tiếp tục tiến về phía Tây hồ Ilmen, tấn công cụm cứ điểm Shimsk do Cụm phòng thủ Novgorod (Liên Xô) đang trấn giữ. Ngày 13 tháng 7, các đơn vị tiền tiêu của Sư đoàn xe tăng 8 đã tiến dọc theo sông Shelon, thọc sâu vào dải đất hẹp giữa sông Shelon và sông Mshashka mà không hề biết rằng, một cái bẫy đang chờ họ từ hướng Mikhalkino và Skirino nằm ở hai bên sườn Sư đoàn xe tăng 8 (Đức). Sáng sớm ngày 14 tháng 7, Tập đoàn quân 11 (Liên Xô) tiến hành phản công với sự yểm hộ của Sư đoàn không quân 135 trực thuộc Phương diện quân Bắc. Sư đoàn bộ binh 70 (Liên Xô) chỉ có 15.333 quân so với 16.120 quân của Sư đoàn xe tăng 8 (Đức), 16 xe tăng đấu với 201 xe tăng, 53 khẩu pháo đấu với 60 khẩu pháo, 136 súng cối đấu với 78 súng cối; chỉ có lực lượng phòng không chiếm ưu thế tuyệt đối với 60 khẩu đội/10 khẩu đội. Sư đoàn này đã đánh bật Sư đoàn xe tăng 8 (Đức) khỏi thị trấn Skirino, bao vây và tiêu diệt một bộ phận xe tăng của sư đoàn này tại phía Bắc Skirino. Bị phản công bất ngờ từ hướng chính diện Prigorov (???) và bên sườn từ hướng Skirino, chủ lực Sư đoàn xe tăng 8 (Đức) buộc phải lùi lại. Trên cánh trái, chủ lực của Sư đoàn cơ giới 3 (Đức) cũng bị Quân đoàn bộ binh 16 (Liên Xô) đánh bật khỏi tuyến sông Mshaga và buộc phải rút về Ostrov. Trung đoàn cơ giới 29 (Đức) cũng phải hủy bỏ cuộc tấn công vào Gorodishche. Chiều 14 tháng 7, Trung đoàn bộ binh 841 thuộc Sư đoàn bộ binh 237 (Liên Xô) bao vây và tiêu diệt tiểu đoàn trinh sát cơ giới của Sư đoàn cơ giới 3 (Đức) ở phía Nam Gorodishche và tiến về Borok. Ngày 15 tháng 7, các sư đoàn bộ binh 252 và 329 thừa thắng xốc tới Soltsy. Lúc 18 giờ cùng ngày, Trung đoàn bộ binh 252 thuộc Sư đoàn bộ binh 70 đã đánh bật Trung đoàn xe tăng 10 thuộc Sư đoàn xe tăng 8 (Đức) khỏi thị trấn Soltsy. Lữ đoàn cơ giới 8 có Tiểu đoàn xe tăng 28 và Trung đoàn pháo binh cơ giới 80 bị bao vây tại phía Tây thị trấn Soltsy. Chiều 16 tháng 8, cụm quân Đức tại đây buộc phải mở đường máu rút quân dọc theo con đường sắt từ Soltsy đi Dubelka (???) trong sự truy đuổi của Sư đoàn cơ giới 202 và Sư đoàn bộ binh 70 (Liên Xô). Ngày 16 tháng 7, Sư đoàn bộ binh 70 (Liên Xô) chiếm các thị trấn Seltso và Relbitsy, dồn quân Đức về tuyến Nikolsky (???) - Baranovo - Bolshoy Klin (Klin) - Dubelka (??? ). Từ phía Nam Ilmen, Sư đoàn bộ binh 183 (Liên Xô) vượt sông Shelon đánh vào hậu cứ của Quân đoàn cơ giới 56 (Đức), tiếp tục vượt sông Sitnye tấn công lên Dubky (???) và Shamusky (???) nhằm cắt đường rút về phía sau của Sư đoàn xe tăng 8 (Đức). Ngày 17 tháng 7, Quân đoàn cơ giới 56 (Đức) bị đẩy lui hơn 40 km, quay lại tuyến xuất phát tấn công ngày 10 tháng 7. Cuộc phản công của Tập đoàn quân 11 (Liên Xô) tại khu vực Soltsy đã gây ra một mối lo ngại lớn không chỉ cho Bộ Tư lệnh Cụm tập đoàn quân Bắc (Đức) mà còn ở cả Tổng hành dinh của quân đội Đức Quốc xã. Tổng tham mưu trưởng lục quân Đức, tướng Franz Halder viết: Sự rút lui của Quân đoàn xe tăng 56 buộc Bộ tư lệnh Cụm tập đoàn quân "Bắc" (Đức) phải có những biện pháp đặc biệt để đối phó bởi ngày 17 tháng 7, 2 trung đoàn xe tăng và 1 trung đoàn cơ giới của Sư đoàn cơ giới 21 (Liên Xô) đã triển khai phía sau các sư đoàn bộ binh Liên Xô tại Cheremenets, Bolotsko, Borok và Novoselye, cùng với Sư đoàn cơ giới 202 uy hiếp cả hai bên sườn của Quân đoàn xe tăng 56 và chia cắt quân đoàn này với Quân đoàn xe tăng 41 đang tấn công trên hướng Luga. Tuy nhiên, nguyên soái K. E. Voroshilov đã phạm sai lầm khi ông tách các trung đoàn xe tăng để phối thuộc và yểm hộ cho các sư đoàn bộ binh. Trong đó, Trung đoàn 3 có 25 xe tăng được giao yểm hộ Sư đoàn bộ binh 70, Trung đoàn 1 còn lại 25 xe tăng được phối thuộc cho Sư đoàn bộ binh 237, Trung đoàn cơ giới 2 có 12 xe tăng được sử dụng làm lực lượng cơ động. Việc phân tán xe tăng đã làm yếu sức chiến đấu của Sư đoàn xe tăng 21 và tạo điều kiện cho Sư đoàn cơ giới SS "Totenkopf" tập trung lực lượng đánh bại từng trung đoàn xe tăng Liên Xô. Ngày 18 tháng 7, Sư đoàn cơ giới SS "Totenkopf" được trả về đội hình của Quân đoàn cơ giới 56 và tướng Erich von Manstein bắt đầu ở cuộc phản đột kích. Ngay trong buổi sáng ngày 18 tháng 7, Sư đoàn cơ giới 21 (Liên Xô) mất 8 xe tăng do hỏa lực của quân Đức, 9 chiếc khác bị hỏng vì lý do kỹ thuật, 10 xe chiến đấu bộ binh bị đốt cháy. Sư đoàn chỉ còn lại 33 xe tăng trên tuyến đầu và 12 chiếc của Trung đoàn cơ giới 2.. Chiều 18 tháng 7, Sư đoàn cơ giới SS "Totenkpf" phối hợp với Sư đoàn bộ binh 269 bắt đầu đẩy lùi Quân đoàn bộ binh 16 (Liên Xô) về tuyến Ostrov - Seltso - Relbitsy. Trên cánh trái, Sư đoàn xe tăng 3 (Đức) cũng thực hiện các đòn phản đột kích vào Zhidy (???) và Borok rồi phản đột kích dọc theo tả ngạn sông Mshaga. 10 giờ ngày 19 tháng 7, khi tướng V. I. Morozov ra lệnh cho tiền đội của Sư đoàn xe tăng 21 rút về tuyến sau thi xe tăng Đức đã đột kích vào phía sau lưng sư đoàn này được 30 km. Ngày 20 tháng 7, Sư đoàn xe tăng 8 (Đức) chiếm lại Soltsy và bắt đầu uy hiếp sườn trái của Tập đoàn quân 11 (Liên Xô). Trên cánh Bắc của chiến dịch, Sư đoàn cơ giới 36 (Đức) cũng chuyển hướng tấn công vào Shimsk, buộc Quân đoàn cơ giới 12 (Liên Xô) phải xoay hướng sang phía Bắc để đối phó. Ngày 21 tháng 7, Tập đoàn quân 11 (Liên Xô) phải rút về tuyến xuất phát tấn công với tổn thất khá nặng nề. Sư đoàn xe tăng 21 chỉ còn lại 24 xe tăng hoạt động được và vẫn phải phân tán để yểm hộ cho các sư đoàn bộ binh Liên Xô đã chuyển sang phòng thủ. Trung đoàn 1 còn 7 chiếc phối hợp với Sư đoàn bộ binh 237 giữ Utorgosh. Trung đoàn 3 cũng còn lại 7 xe tăng phối hợp với các trung đoàn 68 và 329 giữ tuyến Sevnya (???) - Mikhalkino. Trung đoàn 2 còn lại 10 xe chiến đấu bộ binh phối hợp với Trung đoàn 252 và phần còn lại của Sư đoàn cơ giới 202 giữ tuyến sông Shelon. Ngày 22 tháng 7, Sư đoàn xe tăng 8 (Đức) chiếm lại Skirino và tiến tới ngã ba sông Shelon - Mshashka. Trận phản công Soltsy của quân đội Liên Xô không đủ mạnh nên chỉ làm chậm thời gian tiến quân theo hướng Leningrad của quân đội Đức Quốc xã. Mặc dù vậy, Quân đoàn cơ giới 56 (Đức) nói chung và Sư đoàn xe tăng 8 trong đội hình thọc sâu của nó nói riêng đã gánh chịu những thiệt hại đáng kể đầu tiên kể từ khi Chiến tranh Xô-Đức khởi phát. Đây cũng là lần đầu tiên tại mặt trận Tây Bắc Liên Xô, quân Đức phải rút lui tới 40 km, dù chỉ là tạm thời. Sự phối hợp không tốt giữa Tập đoàn quân 11 với Sư đoàn cơ giới 202 bên sườn trái nó đã làm yếu đòn tấn công của Quân đoàn bộ binh 16. Sư đoàn này chỉ tham gia vào trận đánh chiếm Soltsy và không đủ sức để tiếp tục tấn công ở giai đoạn sau của trận đánh khi nó chỉ còn lại Trung đoàn cơ giới 5 tương đối nguyên vẹn. Do đó, mũi tấn công bọc hậu của Sư đoàn bộ binh 183 (Liên Xô) trở nên đơn độc và nó dễ dàng bị Sư đoàn bộ binh 269 (Đức) từ thê đội 2 của Tập đoàn quân xe tăng 4 lên cản phá và chịu thiệt hại nặng khi bị kẹp vào dải đất hẹp giữa hai con sông Sitnye và Shelon. Sau trận phản đột kích, từ ngày 22 tháng 7, mặt trận phía Nam hồ Ilmen tương đối ổn định. Tập đoàn quân xe tăng 4 (Đức) đã có thể tính đến các cuộc tấn công vào phòng tuyến Luga để tiếp cận Leningrad.