I have been romantically seeing a man for more than five years. We have known each other for a long time and I know he is an extraordinary man who will be there for me through anything, no matter what. However, I feel that his future is not nearly as bright as mine. The only reason he decided to study hard to get into a good college was because I urged him to. However, I admire him for his social skills and his ability to judge situations accurately and quickly (which means good social skills.)
On the other hand, after going on a break with this man due to the long distance, I have met another man who I have been seeing for a while. This second man is not nearly as great a person as the first. His family is well-off, but this has led him to be somewhat spoiled and I find that I do not respect or admire him as I do the first. However, he is with me physically where I study and he had provided me with comfort and company when I needed/wanted it. Furthermore, he seems a bit more intellectual than the first and I feel that I can learn and grow more being with him than being with the other man.
So my question is, what is the meaning of love? Is it knowing someone is going to be there for you and feeling safe and familiar with them? Or is it something more than that? Should we choose someone who is more suitable for us and wait for love to happen? Or should we love someone then work together to be more suitable for each other?
Also, what should we strive for in marriage? Should we look for someone who we love (at least at the moment) or is that overrated and we should just look for someone who will be mingle in similar social circles as us and give us opportunities that we might otherwise not have? Is having someone similarly intellectual an important trait? Or should it be enough to know that you love each other?