A cylinder assembly includes a cylinder (101) with an inlet channel of compressed air (109) and an outlet channel of exhaust gas (110) located in the middle which is closed by a head (102) and a partition (104). One end of a push rod (107) goes through a linear slide bearing of a partition (105) located in the partition (104). There is a working piston (108) rigidly embedded on the push rod (107). Furthermore, a bottom compensating piston (115) and a top compensating piston (118) are separated from the working piston (108) by spiral compensating springs (116) and (119). A counter-rotating combustion engine comprises crank mechanism (201) which is connected to two oppositely directed identical cylinder assemblies (203a) and (203b) via an engine case (202). The crank mechanism (201) constitutes a crankshaft (204) which consists of two crank half shafts (205a) and (205b). They lie opposite each other and they are connected rotationally with the help of a distance bearing (208). The crank mechanism (201) comprises two pairs of connecting rods (210a) and (210b) whose ends are rotationally connected to one of crank half shafts (205a) and (205b) via a rotary shaft (207). The other ends of the connecting rods are connected to one of two shafts (211), while each of them is connected to a push rod (212) of one of two cylinder assemblies (213a) and (213b), whose construction is the same as in the case of the cylinder assembly described above. There is a power generator (235) on the other end of the push rod (212).