Both can be used before adjectives or adverbs. Both can make those words stronger. But only too has a negative meaning.
Very means a high degree or a very large amount.
Too has a negative meaning. It talks about too much of something.
- My new coat was very expensive, but I was able to buy it.
The coat was too expensive, so I couldn’t buy it. - He drove very quickly and arrived on time.
He drove too quickly and crashed his new car.