Junbao (Jet Li), um jovem monge que estuda Kung fu num templo Shaolin, ao lado de seu melhor e inseparável amigo, Tienbao (Siu-hou Chin). Ao participarem de um torneio, são acusados de trapacearem usando armas não permitidas e são expulsos do templo. Seguindo, cada qual, seu próprio destino. Tienbao torna-se um guerreiro mercenário e Junbao une-se a um grupo de rebeldes liderados por Siu Lin (Michelle Yeoh), que luta contra as arbitrariedades do governo chinês. Por dinheiro, Tienbao acaba traindo e entregando seu amigo aos rebeldes.