I'm not sure what a good mid-size project would look like, but one thing that really helped me was implementing structures/algorithms using C++11's features. It aided in not just getting a feel for them, but also what finding out features I liked and didn't.
An example might be implementing a linked-list or tree with `unique_ptr`, while using conventional pointers for the doubly-linked `prev` part. The goal being exploring the idea of ownership and automatic memory management.
Personally, the most helpful way I learned about using C++ was to try features and hear which ones people liked/disliked and why. The discussion (and sometimes drama!) made things more memorable.