You can absolutely advance in the game without spending real money. All of the characters that cost gems are luxuries. They are not required to advance the main storyline of the game.
After events, the only way to get event related characters is to wait until they are offered in Legendary chest (which cost gems, of course) and then HOPE you get them (sometimes there's only a very small percentage opening the chest will give you the character you want). In the chest menu, there is a little icon in the bottom corner, clicking on it will tell you what's available in that chest and the chance you'll get it.
Where you will have some difficulty is during the special events. Without the premium (gem) characters, you may find it difficult to complete the event. The developers do this on purpose, of course, so you will be inclined to spend money, but it's not necessary if you dont WANT to.
Yes things will take months. That's how it's supposed to be. This game is designed to be a marathon, not a sprint. I will give you the same advice I give every new player... focus on the journey, not the destination. Sometimes, you'll be focused on a task that you will think will take forever, and it will, but you'll get there.
Welcome to the game. Enjoy yourself.