The choice is crucial. You decide with which pokemon to start your adventure, and as the professors usually say, those pokemon will accompany you through your journey. It makes an emotional connection, as to speak. They evolve like you do, and become stronger as you move on with the game. They are not too strong in order not to need anything else, but they are reliable.
Had we the opportunity to choose from all types, we would end up with two issues. First and most obvious one, what's the challenge when you start with a dragon, a fairy or a steel type pokemon? They instantly destroy the progression of the game, and you won't get the chance of learning through the mechanics, have an adventure through the region or discover new strategies to battle your opponents with. Brute force thanks to typing won't help achieve any of those goals. The second reason is the choice of typing. Grass/Fire/Water are a well-known trio that intuitively makes sense, so people of all ages and backgrounds can relate their knowledge to the logic of pokemon and have a smooth integration. They are also basic types that one can imagine, and like equally, unlike Bugs, Ghosts, Dark, and Fairy, although all kids would choose Dragons and Fighters. So it's a good choice.