เป็นกฎหมายที่กำหนดเรื่องความผิด และบทลงโทษไว้สำหรับความผิดนั้น ๆ เพราะรัฐมีหน้าที่รักษาความสงบของบ้านเมือง กฎหมายอาญาจึงกำหนดความสัมพันธ์ ระหว่างรัฐกับราษฎรซึ่งกระทำความผิดขึ้น
กฎหมายอาญามีลักษณะที่สำคัญ 2 ส่วน คือ
1. ส่วนที่บัญญัติถึงความผิด หมายความว่าได้บัญญัติถึงการกระทำ และการงดเว้นกระทำการอย่างใดเป็นความผิดอาญา
2. ส่วนที่บัญญัติถึงโทษ หมายความว่าบทบัญญัตินั้น ๆ นอกจากจะได้ระบุว่าการกระทำหรืองดเว้นการกระทำอย่างใดเป็นความผิดแล้ว ต้องกำหนดโทษอาญาสำหรับความผิดนั้น ๆ ไว้ด้วย
ตัวอย่าง ประมวลกฎหมายอาญา มาตรา 288 บัญญัติว่า “ผู้ใดฆ่าผู้อื่นต้องระวางโทษประหารชีวิต จำคุกตลอดชีวิต จำคุกตั้งแต่สิบห้าถึงยี่สิบปี”
ประมวลกฎหมายอาญา มาตรา 358 บัญญัติว่า “ผู้ใดทำให้เสียหาย ทำลายทำให้เสื่อมค่าหรือทำให้ไร้ประโยชน์ซึ่งทรัพย์ของผู้อื่น หรือผู้อื่นเป็นเจ้าของรวมอยู่ด้วย ผู้นั้นกระทำความผิดฐานทำให้เสียทรัพย์ต้องระวางโทษจำคุกไม่เกิน 3 ปี หรือปรับไม่เกินหกพันบาทหรือทั้งจำทั้งปรับ”
ฉะนั้น กฎหมายอาญาจึงต้องประกอบไปด้วยส่วนที่บัญญัติถึงความผิด และส่วนที่บัญญัติถึงโทษด้วย ส่วนโทษอาญาที่บัญญัติไว้ในประมวลกฎหมายอาญา ได้แก่
(1) ประหารชีวิต
(2) จำคุก
(3) กักขัง
(4) ปรับ
(5) ริบทรัพย์สิน
นอกจากที่บัญญัติไว้ในประมวลกฎหมายอาญาแล้ว ยังมีพระราชบัญญัติอื่นที่กำหนดความผิดเฉพาะเรื่อง และวางโทษไว้ด้วย เช่น พระราชบัญญัติยาเสพติดให้โทษ พระราชบัญญัติอาวุธปืน เครื่องปืน และวัตถุระเบิด และพระราชบัญญัติการพนัน พระราชบัญญัติจราจรทางบก พระราชบัญญัติศุลกากร เป็นต้น พระราชบัญญัติพิเศษที่ระบุความผิดทางอาญา และกำหนดโทษไว้ด้วยเหล่านี้รวมเรียกว่ากฎหมายอาญาทั้งสิ้น
หลักเกณฑ์สำคัญของประมวลกฎหมายอาญา มีดังนี้
1. จะไม่มีความผิดโดยไม่มีกฎหมาย หมายความว่า กฎหมายอาญาจะใช้บังคับได้เฉพาะการกระทำซึ่งกฎหมายที่ใช้อยู่ในขณะนี้ถือว่าเป็นความผิด ถ้ากฎหมายที่ใช้อยู่ในขณะกระทำไม่ถือว่าเป้ฯความผิดแล้ว จะถือว่าการกระทำนั้นเป็นความผิดไม่ได้ และจะลงโทษกันไม่ได้ หลักเรื่องกฎหมายอาญาไม่มีผลย้อนหลังนี้ กฎหมายไม่ให้ย้อนหลังก็เฉพาะที่จะเป้ฯผลร้ายแก่ผู้กระทำความผิดเท่านั้น เช่น การกระทำความผิดใดที่ล่วงเลยการลงโทษ หรือล่วงเลยอายุความฟ้องร้อง แม้จะได้มีกฎหมายใหม่บัญญัติกำหนดอายุความมากขึ้นกว่าเดิม ก็จะเอาตัวผู้กระทำมาฟ้องร้องลงโทษไม่ได้ แต่หากกฎหมายใหม่เป็นคุณแก่ผู้กระทำความผิดมากกว่ากฎหมายเก่าเช่นนี้ กฎหมายก็ให้มีผลย้อนหลังได้ เช่น ประมวลกฎหมายอาญา มาตรา 3 บัญญัติว่า “ถ้ากฎหมายที่ใช้ในขณะกระทำความผิดแตกต่างกับกฎหมายที่ใช้ในภายหลังการกระทำความผิด ให้ใช้กฎหมายในส่วนที่เป็นคุณแก่ผู้กระทำความผิดไม่ว่าในทางใด...”
2. จะไม่มีโทษโดยไม่มีกฎหมาย คือบุคคลจะต้องรับโทษต่อเมื่อมีกฎหมาย ที่ใช้อยู่ในขณะกระทำบัญญัติให้ต้องรับโทษนั้น ๆ เช่น การกระทำความผิดที่มีแต่โทษปรับ ศาลก็ลงโทษได้แต่โทษปรับ ศาลจะลงโทษจำคุกซึ่งไม่ใช้โทษที่กฎหมายบัญญัติไว้ไม่ได้
3. จะต้องตีความกฎหมายอาญาโดยเคร่งครัด กล่าวคือ กรณีที่ถ้อยคำของกฎหมายเป็นที่น่าสงสัย จะตีความโดยขยายความไปลงโทษหรือเพิ่มโทษผู้ต้องหาไม่ได้ แต่อาจตีความโดยขยายความให้เป็นผลดีแก่ผู้ต้องหาได้ ฉะนั้น หลักเกณฑ์ของกฎหมายอาญาจึงเกิดโดยตรงจากตัวบทเท่านั้น และการตีความบทบัญญัติทั้งหลายนั้นก็จะต้องตีความโดยเคร่งครัด กล่าวคือ การกระทำที่ถูกกล่าวหาเป็นความผิดนั้น และการตีความบทบัญญัติทั้งหลายนั้นก็จะต้องตีความโดยเคร่งครัด กล่าวคือ การกระทำที่ถูกกล่าวหาเป็นความผิดนั้น จะต้องอยู่ในความหมายตามปกติธรรมดาของถ้อยคำทั้งหลายที่ใช้ในกฎหมายนั้น จะขยายถ้อยคำเหล่านั้นออกไปไม่ได้
4. การอุดช่องว่างแห่งกฎหมาย ในกรณีที่ประมวลกฎหมายอาญาหรือพระราชบัญญัติอื่นที่บัญญัติความผิดและโทษไม่มีบัญญัติไว้ ซึ่งเรียกว่าช่องว่างแห่งกฎหมายนั้น ศาลจะอุดช่องว่างแห่งกฎหมายให้เป็นผลร้ายแก่ผู้ต้องหาหรือจำเลยไม่ได้ แต่ศาลอาจอุดช่องว่างแห่งกฎหมายเพื่อให้เป็นผลดีแก่ผู้ต้องหาหรือจำเลยได้