Để trang bị kiến thức cho đi thi CTF chỉ lập trình thôi chưa đủ. Nếu chỉ học lập trình thì bạn chỉ làm được phần programming (nếu có).
Bạn nên bắt đầu bằng những ngôn ngữ lập trình cơ bản (Python, Java, C++, C#, PHP...v.v). Tiếp theo là bạn học kiến thức cơ bản về an ninh mạng và thực hành trên hệ thống Wargame (Như bạn sugi nói trên).
Đối với mỗi lĩnh trong CTF đều có thể sử dụng rất nhiều ngôn ngữ không phổ biến. Nhưng đối với những bài như vậy không yêu cầu cao về lập trình, chỉ cần đọc hiểu code và hiểu được "tâm ý" của tác giả và hướng giải.
Vậy nên bạn không nên đặt nặng về vấn đề lập trình khi đi thi CTF nhé. Chỉ cần học một số ngôn ngữ cơ bản để viết tools giúp giải đề nhanh hơn.