Substitute Chris Taylor fired Millwall back into the npower Championship play-off places with the goal which sank fellow promotion hopefuls Leicester.
- Related Content
The winger struck midway through the second half of a scrappy match to condemn the Foxes to their sixth defeat on the road this season.
It meant a return to winning ways for Millwall's manager of the month Kenny Jackett, whose side's 13-match unbeaten run came to a surprise end at Ipswich last week.
Leicester actually made the livelier start and David Nugent's shot was deflected wide before Jamie Vardy teed up Andy King, whose effort was blocked.
But no-nonsense Millwall soon began to out-muscle City's flair players and there were few clear-cut chances in the first half.
Leicester have been linked with a January move for Millwall's on-loan striker Chris Wood, who the Lions themselves want to snap up on a permanent deal.
And the young New Zealander had Millwall's first chance after 20 minutes but planted his header wide.
Lions winger James Henry then fizzed a long-range drive wide before finding Dany N'Guessan with a free-kick, but the former Leicester forward's header was too high.
Liam Trotter also forced a smart save from Foxes keeper Kasper Schmeichel after finding space in the area.
However, Leicester passed up a decent chance to take the lead in the 37th minute when Nugent met a free-kick from Anthony Knockaert six yards out, but the one-time England striker's shot was too close to David Forde.
Schmeichel was called into action again in first-half stoppage time with a diving save from N'Guessan's long-range drive.
Jackett's half-time teamtalk seemed to work wonders as his side dominated the early stages of the second half.
N'Guessan and Shane Lowry had shots blocked for Millwall before Taylor, on at the break, fired over the crossbar.
Wood got another sight of goal on the hour mark but lifted his shot too high, while Danny Drinkwater fired over the top for City.
But the deadlock was broken in the 67th minute when Trotter played a neat one-two with Andy Keogh down the left and crossed for Taylor, who had a simple sidefooted finish from six yards out past the helpless Schmeichel.
Leicester attempted to hit back and Nugent fired wide before Forde saved Wes Morgan's stoppage-time shot, but they could not find a way past a stubborn Millwall rearguard.