Place almonds in a bowl and cover with cool water; place bowl out of direct sunlight and soak for 12 to 48 hours.
Place dates in a separate bowl and cover with 1 cup water; soak for 1 hour.
Drain and rinse almonds in a colander and transfer almonds to a blender. Add dates and their soaking water, vanilla extract, and salt; pour in 4 cups water. Blend on low speed for 10 seconds and slowly increase to high speed and process for 90 seconds.
Place a nut bag or cheesecloth over a bowl; pour in almond mixture. Allow the milk to fully strain through, about 10 minutes. Gently squeeze nut bag or cheesecloth to release any extra milk from the pulp. Transfer almond milk to a container and refrigerate.