Лесновска река извира под името Лопушна от северното подножие на връх Голяма Икуна (1221 m), най-високата точка на Рида Белица на Ихтиманска Средна гора на 1167 m н.в. До село Голема Раковица тече в северозападна посока в дълбока и залесена долина. След това преминава през язовир „Огняново“, насочва се на запад и навлиза в Софийско поле, като от село Доганово до устието нейното корито е коригирано с водозащитни диги. При село Равно поле отново завива на северозапад и при квартал Челопечене коритото ѝ се включва в бившето корито на река Стари Искър. Влива се отдясно в река Искър на 510 m н.в., на 1,6 km северозападно от село Световрачене.[1]
Площта на водосборния басейн на реката е 1096 km2, което представлява 12,7% от водосборния басейн на река Искър. Басейнът на Лесновска река обхваща цялата източна половина на Софийското поле.[1]
Основни притоци: Равна (десен), Треска (ляв), Вуковик (ляв, влива се в язовир „Огняново"), Умнишка река (ляв, влива се в язовир („Огняново"), Габра (ляв), Михов дол (десен), Азмак (десен), Макоцевска река (десен) и Елешница, Матица (десен), Локорска река (десен), Големата река (десен).[1]
Средногодишният отток при квартал Челопечене е 4,7 m3/s, като максимумът е през месеците април-юни, а минимумът – август-октомври.[1]
По течението на реката са разположени 2 града и 7 села: