工程开始后,李冰带领上万民工开山凿石,但是,由于山石坚硬,工程进度缓慢。大家都很着急,这时有人出了个高招:先在岩石上凿些沟槽,放上柴草,再架满树枝和木柴,点火燃烧,使岩石爆裂。这一招果然很灵,进度一下子加快了许多,很快就劈开了宽20米,高40米,长80米的引水渠道。这是控制江水流量的咽喉,因为其形状像个瓶口,所以就取名为“宝瓶口”。
接着,李冰又带领成千上万的民工,来到灌县西边的岷江上游,建造分水堰。开始采用在江心抛石筑堰的办法,但是筑起的石堰接连几次都被洪水冲垮了,没有成功。怎么办呢?大家都在动脑筋想办法,李冰看到岷江盛产竹子,并且受到当地人用竹子盖房、编竹笼盛东西的启示。于是他就让大家用竹子编成大竹笼,里面装满鹅卵石,再把它们连起来,每段大约有二三丈长,然后一层层放到河中堆积起来。同时,还在洲滩两侧用大型鹅卵石垒起两道护堤。这样,一道牢固的分水堰终于筑成了。由于大堤前端形如鱼头,所以取名叫“鱼嘴”。它迎向岷江上游,把汹涌而来的江水分成东西两股。西股叫外江,是岷江的正流,东股叫内江,是灌溉渠系的总干渠,渠首就是宝瓶口,流经宝瓶口再分成许多大小沟渠河道,组成了一个纵横交错的扇形水网,灌溉成都平原的千里农田。分水堰两侧垒砌了鹅卵石护堤,靠内江一侧的叫内金刚堤,外江一侧的叫外金刚堤,也称“金堤”。分水堰是都江堰的主体工程,它建成后,内江灌溉的成都平原,就很少有水旱灾害了。
为了使内江的防洪作用更有保证,李冰又带领大家用竹笼装石筑堤的办法,在内金刚堤的南端筑了一道堤坎,叫“飞沙堰”。它的堰顶比内金刚堤低一些,如果洪水太大,内江水过多就可以溢出“飞沙堰”,流到外江,再沿着岷江流出去。这个办法使内江灌溉区,既能经常保持有水,又不会因水量太大泛滥成灾。
为了彻底解决岷江水患,必须解决泥沙沉积,淤塞河床的问题。为此,李冰决定:每年霜降时节(十月下旬),要进行一次淘江整修,叫岁修。为了使江水断干,方便淘挖,李冰集中群众的智慧,采用杩槎(mǔchā母差)挡水法断水。杩槎是用3根6~8米长的大木条扎成的三脚架,每个三脚架下面都用装有石头的竹笼卡住,把很多三脚架连在一起,在迎水面上绑上竹席再糊上粘土,就筑成了一道临时的挡水坝,阻断水流。淘江时,先用杩槎在外江截流,使江水全部流入内江,然后淘挖外江及其各灌溉渠道淤积的泥沙。到第二年立春前后,外江淘沙完毕,把杩槎移到内江,让江水流入外江,然后再淘挖内江河槽,进行平水槽和飞沙堰的淘沙工程。清明节前后,内江淘沙完毕,撤除杩槎,开始放水灌溉。过去,每到这时候,都要举行盛大的传统放水仪式,成千上万的劳动人民聚集在江边观看放水的盛况,欢庆征服自然的胜利,同时也表达了对李冰父子修堰治水巨大贡献的纪念。