Canyons form from rivers eroding down through layers of sedimentary rock. This is easily done since sedimentary rocks are soft compared to other types of rock. You can find more information here: http://en.wikipedia.org/wiki/Canyon
1 Additional Answer
Canyons form from rivers or water flowing against rock formations. They are formed by the erosion of water and wind. Eventually rocks near the rim are pushed off the edge and fall into the sides of canyons.