Generally, iMessage works very well. However, after iOS 8 was released, some people have had issues with iMessage not working correctly.
The problems appear to be somewhat random in that iMessage completely stops working for some people while others have issues with one particular contact. If you are having issues with only one contact, it is worth noting an iMessage can only be sent when the iPhone is connected to the Internet (either by Wi-Fi or cellular data). Additionally, make sure the recipient has not disabled iMessage on their device. If the recipient disabled iMessage, you will not be able to send an iMessage to them.
Most iMessage issues can be resolved by force-quitting the Messages app and resetting iMessage on the iPhone.