Belmont Club has a post on the current fighting in Fallujah
The description of a bunch of the stuff our guys are using reads like stuff out of both old and new sci-fi books. GPS and laser-guided artillery rounds as well as bombs, munitions to blow a hole in a wall so you don't have to use doors or windows to move through, each man with a radio that works hands-free so people and units are in constant communications, drones that allow instant feedback on the effect of an air or artillery strike... Give it a while for someone to bring out the prototype Armored Combat Suit and we're in Heinlein's worlds.
Think about this: infantry and armor with rifles, machine guns and cannon push the enemy back and force them to concentrate in one area, and they become artillery targets. Only instead of a mass of fire to blanket an area, one or two guided shells fall right on top of them.
They can't just duck around a corner from one unit and be gone, because that unit is talking to the others so everyone knows where the bad guys are going. If they concentrate in a small building, not worth heavy artillery, rockets or heavy machine guns take the building- and the bad guys- apart; it's quite a few years old now, but the Browning Heavy Machine Gun, .50 caliber, can still take a building apart, and anti-armor rockets will blow through a wall quite nicely.
And around the edges, the light infantry units and sniper teams are waiting, so the bad guys have Marines on one side, the Black Watch on the other, and death in the middle. They are screwed.
I once read that what slaughtered the Viet Cong and North Vietnamese regulars in the Tet Offensive was that they came out to fight in a manner U.S . forces had trained for for years; and this allowed artillery and air strikes to be used to fullest effect. What's happening now in Fallujah is the evolution of that. The Marines have trained for years for this kind of combat, weapon systems and communications systems that were ideas a few years ago are operational tools now, and the enemy has no place to hide.