Hi cherry!
There are several modules to do the job, I think XBee series is the most popular. I am currently using ZigBit modules from Atmel, and ATmega128RF as single chip solution (much cheaper, but you have to design the RF output by yourself). From my experience on Atmel's stack, it is a complete stack with many ready tools by the design team. I think they did a fantastic job, but you have to be an experienced C programmer to use those tools. The word "stack" means a regular C program, event driven and with time shared tasks. Most of the program is transparent to the user (that means you), where you have absolutely no control. You only have a workspace to the highest level called application layer, where you can write your application specific C code. I know that XBee modules can be programmed with Arduino, where ready libraries exists that will make your life much easier, but unfortunately I don't have experience neither on XBee, nor on Arduino to give you more details.
XBee-PRO® 802.15.4 OEM RF Modules - Digi International
Atmel Corporation - MCU Wireless -
Atmel Corporation - MCU Wireless - Single-Chip Solutions
Are you going to use 8051 to serially drive with AT commands a specific module? Or is there a ZigBee stack available on 8051? If you choose to use AT commands, it is like driving a GSM modem, you send commands from UART (or maybe SPI) and the module answers back to return its status.
https://www.edaboard.com/threads/219988/
https://www.edaboard.com/threads/218648/
https://www.edaboard.com/threads/224771/
Also there is a special group here in the forum. I suggest to visit it and get much useful information from members posted there.
Embedded Wireless Networks - WiFi, ZigBee, MiWi, 802.15.4, Bluetooth & RF - Forum for Electronics
Hope this information gave you a starting point!;-)