Successful SEO depends on two things: The amount of time the SEO has to invest (which often correlates to your budget) and the skills of the SEO doing the work. Without those two things, it's difficult to answer question number one.
SEO, and digital marketing, in general, require a lot of skillsets that most people don't have. They have some, but not all. They should, however, be letting you know what activities they are doing and explaining why they are important and what the results should be.
As for the second question, there is a lot to do and it's a matter of prioritizing. Ten SEOs will tackle the same project ten different ways, but that doesn't necessarily make any of them wrong. A great resource you can use to understand what an SEO can/should be doing is webmarketingchecklist.com (disclosure: I wrote it.) This will at least give you a place to start an intelligent conversation and set priorities.
As for milestones, you need to determine what your goals are. Are you going for sales, leads, traffic or conversions? What are you getting now and what do you hope to achieve. Then have a conversation with your SEO to determine if your expectations are realistic with the time they have to invest.
First and foremost, you need to know what the SEO consultant is working on each month. Ask for specifics on tasks and closure of any known deliverables.
Second, I would also ask him to send you reports or generate your own reports. Here are some of my favorites:
Pages Per Visit
New vs. Returning Visitors
Traffic by Channel
Traffic by Source
Traffic by Social Media
Traffic by Referrers
Top Search Queries
Top Landing Pages
Most Popular Pages
Top Exit Pages
Conversions by Goal
Conversions by Medium
Revenue by Channel
Positions with Changes
Page 1 Keywords
Almost There Keywords
Pages 2 to 5 Keywords
A lot of the SEO jargon is not going to make sense to most business owners (and will only make sense to your internal marketing team, if you have one in place).
That said, you can judge how well your SEO consultant is doing by three metrics:
1) Are you getting more traffic?
2) Is that increased traffic resulting in more sales or other goals?
3) Are you moving up in the rankings?
The proof is in the pudding, and if these three things aren't happening, the rest is inconsequential.
But, the way that your SEO consultant goes about getting results DOES matter. You want to be sure that the steps they are taking will have long-lasting effects that don't disappear the next time Google cracks down on "black hat" SEO techniques that seek to manipulate the rules.
The two things your SEO expert will be doing to help your rankings improve will be On Page Factors and Off Page Factors.
On Page Factors will be easy to spot. They may add or improve content on your site, change the layout of your pages, tweak the design, change the URL structure, or organize your content better.
Off Page Factors mostly comes down to link building. Ideally, your SEO consultant is building links in places where your buyers already hang out. In other words, you would want these links, even if search engines didn't exist, because they would drive qualified leads.
What you want to avoid is hiring a black hat SEO who builds back links to your site on Private Blog Networks (Google this term) or in other shady locations. You may be happy in the short-term if your ranking improve, but black hat link building can come back to bite you in the a$$ and even earn you a Google penalty.
To sum up, you'll know if your SEO expert is doing a good job if your phone starts ringing more often and you start getting more online orders.
Be aware that Bing seems to reflect changes more quickly than Google does. For whatever reason, Google seems to implement changes to rankings a bit more slowly than Bing.
A reasonable time frame to see results in most categories is about six months, Depending on how competitive your vertical is, it may be less or more time than this to get the exact results you are looking for, but six months should be more than enough time to determine whether you are seeing progress or not.
Hope that helps shed some light on your question.