There are several reasons, however the brief summary of it is that massive credit must go to the ACB, the ICC, the PCB, BCCI, German, Swedish and US Governments (others too I'm sure).
The ACB have done an outstanding job at capitalising on the opportunities they got. In no time at all they established a proper FC set-up, a t20 league etc etc to ensure that a domestic system got up and running and the local players got to play and play regularly. They have constructed stadia in several locations, have a new high quality office and all done in the midst of a war.
There are cultural aspects as well, the development of many guys from Pakistani refugee camps is well known but Afghanistan was always ripe for becoming a cricketing power due to its location and similarities to its neighbours. From an economic standpoint they benefit hugely as well from Afghanistans overall chaotic situation. The ACB and Ireland receive the same level of funding yet the latter can hire perhaps 20 (maximum) full time cricketers whereas the ACB have over 200 individuals in the country for whom cricket is their sole job and income source, not to mention the others who play in their spare time. A dollar in Afghanistan in ICC funding goes a long way further than it does in nearly all other cricket nations.
The PCB to their credit fostered cricket in Afghanistan in their early days too. Letting them play in Pakistan and arranging the odd match. In recent years the BCCI have stepped up and become a powerful ally, allowing them to play and train in Noida instead of the UAE.
Last but not least, as I alluded to earlier, the Afghan Cricket Board receive millions of dollars annually from Sweden, Germany, the US and elsewhere which is then used to further grow the game with the construction of stadia and facilities in the country as these parties identify cricket as a massive potential tool in the country which it clearly is. Where people have jobs and people have hope people are happy, and in a country that is currently wartorn cricket has been identified as a potential unifier and a place where Afghanistan can be on the global stage for positive reasons.
To summarise it
1) The country was always ripe for cricketing growth in terms of popularity, climate, economics, natural ability.
2) The ACB have managed their resources well and actually implemented planning for the future with regular games for their A, u19 sides.
3) The ACB receive shedloads of money (by Afghan standards) which allows cricket to easily sit atop the pile of local sports and even job opportunities in some ways.
4) The ICC, PCB, BCCI and others have stepped up to provide support.
The thing is the benchmark has been set and there is absolutely zero reason why other nations such as Nepal couldnt enjoy similar rises. In 10 years with proper management Nepal could be another Full Member, and to those who laugh at that statement remember, Afghanistan were playing Japan in 2007, now they nearly won the Asia Cup. In the right conditions sporting prowess can emerge rapidly.