#1 - Google Keyboard
Google Keyboard is one of the most popular keyboard among all Android users. Besides the classic (and very nice themed) keyboard with classic typing, this keyboard also brings swype feature supported for many languages. I personally use this keyboard and I am very pleased with it.
#2 - SwiftKey
SwiftKey is also one of the best keyboard available for Android. Unlike the Google Keyboard, the SwiftKey is highly customizable. It also has a nice and pretty interface, many features and also supports the swype feature.
#3 - DynamicKeyboard
Dynamic Keyboard doesn't have the swype feature, neither any pretty interface. But it has something that even the best keyboards hasn't got yet. This keyboard can change its keys to make typing even faster.
This app has been released recently and well, it's not supported for many languages and also contains a lot of bugs.
#4 TouchPal X
Another keyboard, very simillar to others, including swype and word prediction also offers typing statistics and cool gestures which will make typing easier.